Skip to content

Workflow file for this run

name: CKAN deb packages publish workflow
on:
push:
tags:
- v*
jobs:
call-build-workflow:
uses: ./.github/workflows/reusable-build-package.yml
upload-to-s3:
needs: call-build-workflow
runs-on: ubuntu-latest
env:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
AWS_DEFAULT_REGION: ${{ secrets.AWS_REGION }}
steps:
- uses: actions/download-artifact@v4
with:
pattern: python-ckan*
merge-multiple: true
- name: Generate hash and upload
run: |
# Download current md5sum file
aws s3 cp s3://${{ secrets.AWS_BUCKET }}/md5sum .
for file in python-ckan*; do
# Remove current md5sum entry
sed -i "/$file/d" md5sum
# Add updated entry to md5sum file
md5sum $file >> md5sum
# Upload deb file
aws s3 cp $file s3://${{ secrets.AWS_BUCKET }}/staging/$file
done
# Upload updated md5sum file
aws s3 cp md5sum s3://${{ secrets.AWS_BUCKET }}/staging/md5sum
upload-to-release:
needs: call-build-workflow
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- uses: actions/download-artifact@v4
with:
pattern: python-ckan*
merge-multiple: true
- name: Create release and upload the deb files
env:
GH_TOKEN: ${{ github.token }}
run: |
VERSIONS=$(cat "VERSIONS.json")
LIST=$(echo $VERSIONS | jq -r '
(.[] | ["* \(.ckan_ref) on Ubuntu \(.ubuntu_version)"]) |
.[]
')
NOTES="This release includes deb packages for the following versions.
$LIST
Please check the relevant file in the Assets section below.
Packages are also available at https://packaging.ckan.org."
NOTES=$( echo $NOTES | sed 's/^[ \t]*//')
gh release create ${{ github.ref_name }} ./python-ckan* --verify-tag --notes "$NOTES"