ODS-tools Build #4
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: ODS-tools Build | |
on: | |
workflow_dispatch: | |
inputs: | |
oed_spec_branch: | |
description: 'Branch of OED spec' | |
required: false | |
workflow_call: | |
inputs: | |
ods_branch: | |
description: 'Build package from branch' | |
required: false | |
type: string | |
oed_spec_json: | |
description: 'Test unreleased OED spec' | |
required: false | |
type: string | |
outputs: | |
src_filename: | |
description: "Source Package filename" | |
value: ${{ jobs.build.outputs.src_filename }} | |
whl_filename: | |
description: "Wheel Package filename" | |
value: ${{ jobs.build.outputs.whl_filename }} | |
jobs: | |
oed_spec: | |
if: inputs.oed_spec_branch != '' | |
uses: OasisLMF/ODS_OpenExposureData/.github/workflows/build.yml@develop | |
secrets: inherit | |
with: | |
ods_branch: ${{ inputs.oed_spec_branch }} | |
build: | |
if: ${{ ! failure() || ! cancelled() }} | |
needs: [oed_spec] | |
name: Build OpenData Package | |
runs-on: ubuntu-latest | |
outputs: | |
src_filename: ${{ steps.build_package.outputs.source }} | |
whl_filename: ${{ steps.build_package.outputs.wheel }} | |
steps: | |
- name: Github context | |
run: echo "$GITHUB_CONTEXT" | |
shell: bash | |
env: | |
GITHUB_CONTEXT: ${{ toJson(github) }} | |
- name: Clone | |
uses: actions/checkout@v3 | |
if: inputs.ods_branch == '' | |
with: | |
repository: OasisLMF/ODS_Tools | |
ref: ${{ github.ref_name }} | |
- name: Clone (workflow_call) | |
uses: actions/checkout@v3 | |
if: inputs.ods_branch != '' | |
with: | |
repository: OasisLMF/ODS_Tools | |
ref: ${{ inputs.ods_branch }} | |
- name: Set up Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: 3.9 | |
- run: pip install pip-tools pandas pyarrow openpyxl==3.0.10 click tox wheel | |
- name: Build package (from OED release) | |
if: inputs.oed_spec_json == '' | |
run: | | |
python setup.py sdist | |
python setup.py bdist_wheel | |
- name: Download OED spec | |
if: inputs.oed_spec_json != '' || inputs.oed_spec_branch != '' | |
uses: actions/download-artifact@v3 | |
with: | |
name: extracted_spec | |
path: ${{ github.workspace }}/ | |
# Testing only - not for release | |
- name: Buildpackage (from OED schema file) | |
if: inputs.oed_spec_json != '' || inputs.oed_spec_branch != '' | |
run: | | |
python setup.py bdist_wheel install "--local-oed-spec=${{ github.workspace }}/OpenExposureData_Spec.json" | |
- name: Build Output | |
id: build_package | |
run: | | |
WHL=$(find ./dist/ -name "*.whl" -exec basename {} \;) | |
SRC=$(find ./dist/ -name "*.tar.gz" -exec basename {} \;) | |
echo "wheel=$WHL" >> $GITHUB_OUTPUT | |
echo "source=$SRC" >> $GITHUB_OUTPUT | |
- name: Store source package | |
uses: actions/upload-artifact@v3 | |
with: | |
name: src_package | |
path: ./dist/${{ steps.build_package.outputs.source }} | |
retention-days: 5 | |
- name: Store Wheel package | |
uses: actions/upload-artifact@v3 | |
with: | |
name: bin_package | |
path: ./dist/${{ steps.build_package.outputs.wheel }} | |
retention-days: 5 |