From d120f56424d8fb3bf572ea08e8b3b4e227c56165 Mon Sep 17 00:00:00 2001 From: Dan Halbert Date: Mon, 30 Oct 2023 16:16:57 -0400 Subject: [PATCH] update workflows --- .github/workflows/build.yml | 14 +++++----- .github/workflows/release.yml | 51 ++++++++++++++++++----------------- build.sh | 10 ++----- 3 files changed, 34 insertions(+), 41 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index ccd80da..82182dc 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -6,20 +6,18 @@ jobs: test: runs-on: ubuntu-latest steps: - - name: Dump GitHub context - env: - GITHUB_CONTEXT: ${{ toJson(github) }} - run: echo "$GITHUB_CONTEXT" - - name: Set up Python 3.6 - uses: actions/setup-python@v1 + - name: Set up Python 3.11 + uses: actions/setup-python@v4 with: - python-version: 3.6 + python-version: 3.11 - name: Versions run: | python3 --version - - uses: actions/checkout@v1 + - uses: actions/checkout@v3 with: submodules: true + - name: Fetch correct submodule shas + run: git submodule foreach 'git fetch --tags --depth 1 origin $sha1 && git checkout -q $sha1' - name: Install deps run: | sudo apt-get install -y gettext gawk diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index a6cd737..ff14877 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -8,47 +8,48 @@ jobs: upload-release-assets: runs-on: ubuntu-latest steps: - - name: Dump GitHub context - env: - GITHUB_CONTEXT: ${{ toJson(github) }} - run: echo "$GITHUB_CONTEXT" - name: Translate Repo Name For Build Tools filename_prefix id: repo-name run: | - echo ::set-output name=repo-name::$( + echo "repo-name=$( echo ${{ github.repository }} | awk -F '\/' '{ print tolower($2) }' | tr '_' '-' - ) - - name: Set up Python 3.6 - uses: actions/setup-python@v1 + )" >> $GITHUB_OUTPUT + - name: Set up Python 3.11 + uses: actions/setup-python@v4 with: - python-version: 3.6 + python-version: 3.11 - name: Versions run: | python3 --version - - uses: actions/checkout@v1 + - uses: actions/checkout@v3 with: submodules: true + - name: Fetch correct submodule shas + run: git submodule foreach 'git fetch --tags --depth 1 origin $sha1 && git checkout -q $sha1' - name: Install deps run: | sudo apt-get install -y gettext gawk pip install -r requirements.txt + - name: Package Folder Prefix For circuitpython-build-tools (Community Bundle Specific) + id: pkg-folder + run: | + echo prefix=$( + ls -RUx | + gawk -F '\n' '{ match($1, /(drivers|helpers)\/(.+)\/(.+)\:/, arr) ; if (length(arr[0]) > 0 && match(arr[3], arr[2]) > 0) printf "%s, ", arr[3] }' | + gawk '{ trimmed = substr($0, 1, length($0) - 2) ; print "\"" trimmed "\"" }' + ) >> $GITHUB_OUTPUT - name: Build assets - run: ./build.sh + run: circuitpython-build-bundles --filename_prefix ${{ steps.repo-name.outputs.repo-name }} --library_location libraries --library_depth 2 --package_folder_prefix ${{ steps.pkg-folder.outputs.prefix }} - name: Upload Release Assets - # the 'official' actions version does not yet support dynamically - # supplying asset names to upload. @csexton's version chosen based on - # discussion in the issue below, as its the simplest to implement and - # allows for selecting files with a pattern. - # https://github.com/actions/upload-release-asset/issues/4 - #uses: actions/upload-release-asset@v1.0.1 - uses: csexton/release-asset-action@master + uses: shogo82148/actions-upload-release-asset@v1 with: - pattern: "bundles/*" - github-token: ${{ secrets.GITHUB_TOKEN }} -# - name: Upload Assets To AWS S3 -# env: -# AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} -# AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} -# run: "[ -z \"$AWS_ACCESS_KEY_ID\" ] || aws s3 cp bundles/ s3://adafruit-circuit-python/bundles/community --recursive --no-progress --region us-east-1" + asset_path: "bundles/*" + github_token: ${{ secrets.GITHUB_TOKEN }} + upload_url: ${{ github.event.release.upload_url }} + - name: Upload Assets To AWS S3 + env: + AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + run: "[ -z \"$AWS_ACCESS_KEY_ID\" ] || aws s3 cp bundles/ s3://adafruit-circuit-python/bundles/community --recursive --no-progress --region us-east-1" diff --git a/build.sh b/build.sh index e051e36..c8ec2e6 100755 --- a/build.sh +++ b/build.sh @@ -28,14 +28,8 @@ set -e P=$( ls -RUx | -gawk -F '\n' '{ match($1, /(drivers|helpers)\/(.+)\/(.+)\:/, arr) ; if (length(arr[0]) > 0 && match(arr[3], arr[2]) > 0) printf "%s, ", arr[3] }' | +gawk -F '\n' '{ match($1, /(drivers|helpers)\/(.+)\/(.+):/, arr) ; if (length(arr[0]) > 0 && match(arr[3], arr[2]) > 0) printf "%s, ", arr[3] }' | gawk '{ trimmed = substr($0, 1, length($0) - 2) ; print "\"" trimmed "\"" }' ) -if [ -z "$P" ]; then - P="" -else - P="--package_folder_prefix $P" -fi - -circuitpython-build-bundles --filename_prefix circuitpython-org-bundle --library_location libraries --library_depth 2 $P +circuitpython-build-bundles --filename_prefix circuitpython-org-bundle --library_location libraries --library_depth 2 --package_folder_prefix "$P"