Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/build-and-publish-docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ on:
jobs:
get-version:
name: Get pilot cli version
runs-on: ubuntu-20.04
runs-on: ubuntu-latest
outputs:
cli_version: ${{steps.get-version.outputs.cli_version}}
steps:
Expand All @@ -39,7 +39,7 @@ jobs:
build-and-push-docker-image:
needs: [get-version]
name: Build Docker images and push to repositories
runs-on: ubuntu-20.04
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
Expand Down
55 changes: 32 additions & 23 deletions .github/workflows/build-and-publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ jobs:
push-binary-linux:
needs: [ pre-build-setup ]
if: ${{ needs.pre-build-setup.outputs.branch == 'main' || needs.pre-build-setup.outputs.branch == 'develop'}}
runs-on: ubuntu-22.04
runs-on: ubuntu-latest
outputs:
upload_url: ${{steps.create_release.outputs.upload_url}}
steps:
Expand All @@ -83,49 +83,58 @@ jobs:
with:
name: release-message

- name: Download Release Message Artifact
uses: actions/download-artifact@v4
with:
name: release-message

- name: Set up Python
- name: Set up Python for version extraction
uses: actions/setup-python@v4
with:
python-version: 3.10.12

- name: Install Poetry
- name: Install Poetry for version extraction
uses: snok/install-poetry@v1
with:
version: 1.8.3
virtualenvs-create: true
virtualenvs-in-project: true
installer-parallel: true

- name: Set up cache
id: cached-poetry-dependencies
uses: actions/cache@v3
with:
path: .venv
key: venv-linux-${{ hashFiles('**/poetry.lock') }}
- name: Build default binary using manylinux_2_31
run: |
docker run --rm -v ${{ github.workspace }}:/io quay.io/pypa/manylinux_2_31_x86_64 bash -c "
cd /io
mkdir -p ./app/bundled_app/linux ./app/build/linux

- name: Ensure cache is healthy
if: steps.cached-poetry-dependencies.outputs.cache-hit == 'true'
run: timeout 10s poetry run pip --version || rm -rf .venv
# Install Poetry
curl -sSL https://install.python-poetry.org | python3 -
export PATH=\$PATH:/root/.local/bin

- name: Install dependencies
run: poetry install --no-interaction
# Configure and install dependencies
cd /io
poetry config virtualenvs.create false
poetry install --no-interaction

# Install PyInstaller
pip install pyinstaller

- name: Build default binary
run: poetry run pyinstaller -F --distpath ./app/bundled_app/linux --specpath ./app/build/linux --workpath ./app/build/linux --paths=./.venv/lib/python3.10/site-packages ./app/pilotcli.py -n ${{ github.sha }}
# Build binary
pyinstaller -F --distpath ./app/bundled_app/linux --specpath ./app/build/linux --workpath ./app/build/linux ./app/pilotcli.py -n ${{ github.sha }}
"

- name: Rename default output file
run: mv "./app/bundled_app/linux/${{ github.sha }}" "./app/bundled_app/linux/pilotcli_linux"

- name: Enable cloud mode
run: touch ./app/ENABLE_CLOUD_MODE

- name: Build cloud binary
run: poetry run pyinstaller -F --distpath ./app/bundled_app/linux --specpath ./app/build/linux --workpath ./app/build/linux --paths=./.venv/lib/python3.9/site-packages --add-binary=$(pwd)/app/ENABLE_CLOUD_MODE:. ./app/pilotcli.py -n ${{ github.sha }}
- name: Build cloud binary using manylinux_2_31
run: |
docker run --rm -v ${{ github.workspace }}:/io quay.io/pypa/manylinux_2_31_x86_64 bash -c "
cd /io

# Poetry should already be installed from previous step
export PATH=\$PATH:/root/.local/bin

# Build cloud binary
pyinstaller -F --distpath ./app/bundled_app/linux --specpath ./app/build/linux --workpath ./app/build/linux --add-binary=/io/app/ENABLE_CLOUD_MODE:. ./app/pilotcli.py -n ${{ github.sha }}
"

- name: Rename cloud output file
run: mv "./app/bundled_app/linux/${{ github.sha }}" "./app/bundled_app/linux/pilotcli_cloud"
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/update_compatible_version.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ on:

jobs:
update-compatible-versions:
runs-on: ubuntu-20.04
runs-on: ubuntu-latest

steps:
- name: Checkout repository
Expand Down
3 changes: 3 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,9 @@ Command line tool that allows the user to execute data operations on the platfor
| 3.19.2 | 2.15.2 | 2.15.2 |
| 3.19.3 | 2.15.2 | 2.15.2 |
| 3.19.4 | 2.15.2 | 2.15.2 |
| 3.19.5 | 2.15.2 | 2.15.2 |
| 3.19.6 | 2.15.2 | 2.15.2 |
| 3.19.7 | 2.15.2 | 2.15.2 |
<!-- COMPATIBLE_VERSIONS_END -->

## Build Instructions
Expand Down
1 change: 1 addition & 0 deletions docs/compatible_version.ndjson
Original file line number Diff line number Diff line change
Expand Up @@ -13,3 +13,4 @@
{"Cli Version": "3.19.4", "Pilot Release Version": "2.15.2", "Compatible Version": "2.15.2"}
{"Cli Version": "3.19.5", "Pilot Release Version": "2.15.2", "Compatible Version": "2.15.2"}
{"Cli Version": "3.19.6", "Pilot Release Version": "2.15.2", "Compatible Version": "2.15.2"}
{"Cli Version": "3.19.7", "Pilot Release Version": "2.15.2", "Compatible Version": "2.15.2"}
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[tool.poetry]
name = "app"
version = "3.19.6"
version = "3.19.7"
description = "This service is designed to support pilot platform"
authors = ["Indoc Systems"]

Expand Down
Loading