|
@@ -1,4 +1,6 @@
|
|
|
# DO NOT EDIT. Generated from /extra/github-actions
|
|
|
+# TODO: support skip ci (https://github.community/t/github-actions-does-not-respect-skip-ci/17325/8)
|
|
|
+
|
|
|
name: CI
|
|
|
on: [push, pull_request]
|
|
|
|
|
@@ -286,7 +288,7 @@ jobs:
|
|
|
eval $(opam env)
|
|
|
opam config exec -- make -s -j`sysctl -n hw.ncpu` STATICLINK=1 "LIB_PARAMS=/usr/local/opt/zlib/lib/libz.a /usr/local/lib/libpcre.a /usr/local/lib/libmbedtls.a /usr/local/lib/libmbedcrypto.a /usr/local/lib/libmbedx509.a -cclib '-framework Security -framework CoreFoundation'" haxe
|
|
|
opam config exec -- make -s haxelib
|
|
|
- make -s package_unix
|
|
|
+ make -s package_unix package_installer_mac
|
|
|
ls -l out
|
|
|
otool -L ./haxe
|
|
|
otool -L ./haxelib
|
|
@@ -631,3 +633,75 @@ jobs:
|
|
|
haxe RunCi.hxml
|
|
|
working-directory: ${{github.workspace}}/tests
|
|
|
|
|
|
+
|
|
|
+ deploy:
|
|
|
+ if: github.event_name != 'pull_request'
|
|
|
+ needs: [linux-test, mac-test, windows-test, windows64-test]
|
|
|
+ runs-on: ubuntu-latest
|
|
|
+ steps:
|
|
|
+ # this is only needed for to get `COMMIT_DATE`...
|
|
|
+ # maybe https://github.community/t/expose-commit-timestamp-in-the-github-context-data/16460/3
|
|
|
+ # would be faster
|
|
|
+ - name: Checkout the repository
|
|
|
+ uses: actions/checkout@main
|
|
|
+
|
|
|
+ - name: Download build artifacts
|
|
|
+ uses: actions/download-artifact@v2
|
|
|
+
|
|
|
+ - name: Install awscli
|
|
|
+ run: |
|
|
|
+ set -ex
|
|
|
+ sudo apt-get update -qqy
|
|
|
+ sudo apt-get install -qqy awscli
|
|
|
+
|
|
|
+ # https://stackoverflow.com/questions/58033366/how-to-get-current-branch-within-github-actions
|
|
|
+ - name: Extract branch name
|
|
|
+ id: extract_branch
|
|
|
+ shell: bash
|
|
|
+ run: echo "##[set-output name=branch;]$(echo ${GITHUB_REF#refs/heads/})"
|
|
|
+
|
|
|
+ - name: Upload binaries
|
|
|
+ shell: bash
|
|
|
+ env:
|
|
|
+ AWS_ACCESS_KEY_ID: ${{ secrets.HXBUILDS_AWS_ACCESS_KEY_ID }}
|
|
|
+ AWS_SECRET_ACCESS_KEY: ${{ secrets.HXBUILDS_AWS_SECRET_ACCESS_KEY }}
|
|
|
+ HXBUILDS_S3ADDR: ${{ secrets.HXBUILDS_S3ADDR }}/gh-actions
|
|
|
+ run: |
|
|
|
+ set -ex
|
|
|
+ COMMIT_HASH_SHORT=${GITHUB_SHA:0:7}
|
|
|
+ COMMIT_DATE=`TZ=UTC git show --quiet --date='format-local:%Y-%m-%d' --format="%cd"`
|
|
|
+ FILE_NAME=haxe_${COMMIT_DATE}_${{ steps.extract_branch.outputs.branch }}_${COMMIT_HASH_SHORT}
|
|
|
+ aws s3 cp linuxBinaries/*_bin.tar.gz ${HXBUILDS_S3ADDR}/haxe/linux64/${FILE_NAME}.tar.gz
|
|
|
+ aws s3 cp macBinaries/*_bin.tar.gz ${HXBUILDS_S3ADDR}/haxe/mac/${FILE_NAME}.tar.gz
|
|
|
+ aws s3 cp macBinaries/*_installer.tar.gz ${HXBUILDS_S3ADDR}/haxe/mac-installer/${FILE_NAME}.tar.gz
|
|
|
+ aws s3 cp win64Binaries/*_bin.zip ${HXBUILDS_S3ADDR}/haxe/windows64/${FILE_NAME}.zip
|
|
|
+ aws s3 cp win64Binaries/*_installer.zip ${HXBUILDS_S3ADDR}/haxe/windows64-installer/${FILE_NAME}.zip
|
|
|
+ aws s3 cp win64Binaries/*.nupkg ${HXBUILDS_S3ADDR}/haxe/windows64-choco/
|
|
|
+ aws s3 cp win32Binaries/*_bin.zip ${HXBUILDS_S3ADDR}/haxe/windows/${FILE_NAME}.zip
|
|
|
+ aws s3 cp win32Binaries/*_installer.zip ${HXBUILDS_S3ADDR}/haxe/windows-installer/${FILE_NAME}.zip
|
|
|
+ aws s3 cp win32Binaries/*.nupkg ${HXBUILDS_S3ADDR}/haxe/windows-choco/
|
|
|
+
|
|
|
+ - name: Update "latest"
|
|
|
+ if: github.ref == 'refs/heads/development'
|
|
|
+ shell: bash
|
|
|
+ env:
|
|
|
+ AWS_ACCESS_KEY_ID: ${{ secrets.HXBUILDS_AWS_ACCESS_KEY_ID }}
|
|
|
+ AWS_SECRET_ACCESS_KEY: ${{ secrets.HXBUILDS_AWS_SECRET_ACCESS_KEY }}
|
|
|
+ HXBUILDS_S3ADDR: ${{ secrets.HXBUILDS_S3ADDR }}/gh-actions
|
|
|
+ run: |
|
|
|
+ set -ex
|
|
|
+ aws s3 cp linuxBinaries/*_bin.tar.gz ${HXBUILDS_S3ADDR}/haxe/linux64/haxe_latest.tar.gz
|
|
|
+ aws s3 cp macBinaries/*_bin.tar.gz ${HXBUILDS_S3ADDR}/haxe/mac/haxe_latest.tar.gz
|
|
|
+ aws s3 cp macBinaries/*_installer.tar.gz ${HXBUILDS_S3ADDR}/haxe/mac-installer/haxe_latest.tar.gz
|
|
|
+ aws s3 cp win64Binaries/*_bin.zip ${HXBUILDS_S3ADDR}/haxe/windows64/haxe_latest.zip
|
|
|
+ aws s3 cp win64Binaries/*_installer.zip ${HXBUILDS_S3ADDR}/haxe/windows64-installer/haxe_latest.zip
|
|
|
+ aws s3 cp win32Binaries/*_bin.zip ${HXBUILDS_S3ADDR}/haxe/windows/haxe_latest.zip
|
|
|
+ aws s3 cp win32Binaries/*_installer.zip ${HXBUILDS_S3ADDR}/haxe/windows-installer/haxe_latest.zip
|
|
|
+
|
|
|
+ # Chocolatey packages have to be named with version number,
|
|
|
+ # so let's use web redirection to keep the original file name.
|
|
|
+ [[ "$HXBUILDS_S3ADDR" =~ s3://([^/]+)(.*) ]] && HXBUILDS_S3BUCKET="${BASH_REMATCH[1]}" && HXBUILDS_S3PATH="${BASH_REMATCH[2]}"
|
|
|
+ [[ `echo win64Binaries/*.nupkg` =~ win64Binaries/(.+) ]] && FILE_NAME="${BASH_REMATCH[1]}"
|
|
|
+ aws s3 cp ${HXBUILDS_S3ADDR}/haxe/windows64-choco/${FILE_NAME} ${HXBUILDS_S3ADDR}/haxe/windows64-choco/haxe_latest.nupkg --acl public-read --website-redirect "${HXBUILDS_S3PATH}/haxe/windows64-choco/${FILE_NAME}"
|
|
|
+ [[ `echo win32Binaries/*.nupkg` =~ win32Binaries/(.+) ]] && FILE_NAME="${BASH_REMATCH[1]}"
|
|
|
+ aws s3 cp ${HXBUILDS_S3ADDR}/haxe/windows-choco/${FILE_NAME} ${HXBUILDS_S3ADDR}/haxe/windows-choco/haxe_latest.nupkg --acl public-read --website-redirect "${HXBUILDS_S3PATH}/haxe/windows-choco/${FILE_NAME}"
|