|
@@ -18,7 +18,26 @@ jobs:
|
|
with:
|
|
with:
|
|
submodules: recursive
|
|
submodules: recursive
|
|
|
|
|
|
- # @import cache-opam-windows.yml
|
|
|
|
|
|
+ - name: Use GNU Tar from msys
|
|
|
|
+ run: |
|
|
|
|
+ echo "C:\msys64\usr\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
|
|
|
|
+ rm C:\msys64\usr\bin\bash.exe
|
|
|
|
+
|
|
|
|
+ - name: choco install nsis
|
|
|
|
+ uses: nick-invision/retry@v1
|
|
|
|
+ with:
|
|
|
|
+ timeout_minutes: 10
|
|
|
|
+ max_attempts: 10
|
|
|
|
+ command: choco install --no-progress nsis.portable --version 3.02 -y
|
|
|
|
+
|
|
|
|
+ - name: choco install things
|
|
|
|
+ shell: pwsh
|
|
|
|
+ run: choco install --no-progress curl wget 7zip.portable -y
|
|
|
|
+
|
|
|
|
+ - name: Prepend Chocolatey path
|
|
|
|
+ shell: pwsh
|
|
|
|
+ run: Write-Host "::add-path::C:\ProgramData\chocolatey\bin"
|
|
|
|
+
|
|
- name: Install Neko from S3
|
|
- name: Install Neko from S3
|
|
shell: pwsh
|
|
shell: pwsh
|
|
run: |
|
|
run: |
|
|
@@ -53,7 +72,6 @@ jobs:
|
|
& "$($env:CYG_ROOT)/bin/bash.exe" @('-lc', 'cd "$OLDPWD" && tar -C / -xvf libmbedtls.tar.xz')
|
|
& "$($env:CYG_ROOT)/bin/bash.exe" @('-lc', 'cd "$OLDPWD" && tar -C / -xvf libmbedtls.tar.xz')
|
|
|
|
|
|
- name: Install OCaml libraries
|
|
- name: Install OCaml libraries
|
|
- # if: steps.cache-opam.outputs.cache-hit != 'true'
|
|
|
|
shell: pwsh
|
|
shell: pwsh
|
|
run: |
|
|
run: |
|
|
Set-PSDebug -Trace 1
|
|
Set-PSDebug -Trace 1
|
|
@@ -88,6 +106,13 @@ jobs:
|
|
& "$($env:CYG_ROOT)/bin/bash.exe" @('-lc', 'cd "$OLDPWD" && cygcheck ./haxelib.exe')
|
|
& "$($env:CYG_ROOT)/bin/bash.exe" @('-lc', 'cd "$OLDPWD" && cygcheck ./haxelib.exe')
|
|
& "$($env:CYG_ROOT)/bin/bash.exe" @('-lc', 'cd "$OLDPWD" && ls ./out')
|
|
& "$($env:CYG_ROOT)/bin/bash.exe" @('-lc', 'cd "$OLDPWD" && ls ./out')
|
|
|
|
|
|
|
|
+ - name: Check artifact
|
|
|
|
+ shell: bash
|
|
|
|
+ run: |
|
|
|
|
+ ls out
|
|
|
|
+ # Output should contain binaries zip, installer zip and nupkg
|
|
|
|
+ [ $(ls -1 out | wc -l) -eq "3" ]
|
|
|
|
+
|
|
- name: Upload artifact
|
|
- name: Upload artifact
|
|
uses: actions/[email protected]
|
|
uses: actions/[email protected]
|
|
with:
|
|
with:
|
|
@@ -97,7 +122,6 @@ jobs:
|
|
|
|
|
|
windows-build:
|
|
windows-build:
|
|
runs-on: windows-latest
|
|
runs-on: windows-latest
|
|
- if: false
|
|
|
|
env:
|
|
env:
|
|
ACTIONS_ALLOW_UNSECURE_COMMANDS: true
|
|
ACTIONS_ALLOW_UNSECURE_COMMANDS: true
|
|
PLATFORM: windows
|
|
PLATFORM: windows
|
|
@@ -109,7 +133,26 @@ jobs:
|
|
with:
|
|
with:
|
|
submodules: recursive
|
|
submodules: recursive
|
|
|
|
|
|
- # @import cache-opam-windows.yml
|
|
|
|
|
|
+ - name: Use GNU Tar from msys
|
|
|
|
+ run: |
|
|
|
|
+ echo "C:\msys64\usr\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
|
|
|
|
+ rm C:\msys64\usr\bin\bash.exe
|
|
|
|
+
|
|
|
|
+ - name: choco install nsis
|
|
|
|
+ uses: nick-invision/retry@v1
|
|
|
|
+ with:
|
|
|
|
+ timeout_minutes: 10
|
|
|
|
+ max_attempts: 10
|
|
|
|
+ command: choco install --no-progress nsis.portable --version 3.02 -y
|
|
|
|
+
|
|
|
|
+ - name: choco install things
|
|
|
|
+ shell: pwsh
|
|
|
|
+ run: choco install --no-progress curl wget 7zip.portable -y
|
|
|
|
+
|
|
|
|
+ - name: Prepend Chocolatey path
|
|
|
|
+ shell: pwsh
|
|
|
|
+ run: Write-Host "::add-path::C:\ProgramData\chocolatey\bin"
|
|
|
|
+
|
|
- name: Install Neko from S3
|
|
- name: Install Neko from S3
|
|
shell: pwsh
|
|
shell: pwsh
|
|
run: |
|
|
run: |
|
|
@@ -123,6 +166,23 @@ jobs:
|
|
run: neko -version 2>&1
|
|
run: neko -version 2>&1
|
|
|
|
|
|
- name: Setup ocaml
|
|
- name: Setup ocaml
|
|
|
|
+ id: ocaml
|
|
|
|
+ continue-on-error: true
|
|
|
|
+ uses: kLabz/setup-ocaml@win32
|
|
|
|
+ with:
|
|
|
|
+ ocaml-compiler: 4.08.1
|
|
|
|
+ opam-depext: false
|
|
|
|
+ opam-repositories: |
|
|
|
|
+ opam-repository-mingw: https://github.com/ocaml-opam/opam-repository-mingw.git#sunset
|
|
|
|
+ default: https://github.com/ocaml/opam-repository.git
|
|
|
|
+ opam-local-packages: |
|
|
|
|
+ haxe.opam
|
|
|
|
+ cache-prefix: w32-v1
|
|
|
|
+
|
|
|
|
+ # TODO make it work on first try
|
|
|
|
+ # (when cygwin cache doesn't exist, ocaml install fails with a curl error)
|
|
|
|
+ - name: Setup ocaml (second chance)
|
|
|
|
+ if: steps.ocaml.outcome == 'failure'
|
|
uses: kLabz/setup-ocaml@win32
|
|
uses: kLabz/setup-ocaml@win32
|
|
with:
|
|
with:
|
|
ocaml-compiler: 4.08.1
|
|
ocaml-compiler: 4.08.1
|
|
@@ -146,7 +206,6 @@ jobs:
|
|
& "$($env:CYG_ROOT)/bin/bash.exe" @('-lc', 'cd "$OLDPWD" && tar -C / -xvf libmbedtls.tar.xz')
|
|
& "$($env:CYG_ROOT)/bin/bash.exe" @('-lc', 'cd "$OLDPWD" && tar -C / -xvf libmbedtls.tar.xz')
|
|
|
|
|
|
- name: Install OCaml libraries
|
|
- name: Install OCaml libraries
|
|
- # if: steps.cache-opam.outputs.cache-hit != 'true'
|
|
|
|
shell: pwsh
|
|
shell: pwsh
|
|
run: |
|
|
run: |
|
|
Set-PSDebug -Trace 1
|
|
Set-PSDebug -Trace 1
|
|
@@ -181,6 +240,13 @@ jobs:
|
|
& "$($env:CYG_ROOT)/bin/bash.exe" @('-lc', 'cd "$OLDPWD" && cygcheck ./haxelib.exe')
|
|
& "$($env:CYG_ROOT)/bin/bash.exe" @('-lc', 'cd "$OLDPWD" && cygcheck ./haxelib.exe')
|
|
& "$($env:CYG_ROOT)/bin/bash.exe" @('-lc', 'cd "$OLDPWD" && ls ./out')
|
|
& "$($env:CYG_ROOT)/bin/bash.exe" @('-lc', 'cd "$OLDPWD" && ls ./out')
|
|
|
|
|
|
|
|
+ - name: Check artifact
|
|
|
|
+ shell: bash
|
|
|
|
+ run: |
|
|
|
|
+ ls out
|
|
|
|
+ # Output should contain binaries zip, installer zip and nupkg
|
|
|
|
+ [ $(ls -1 out | wc -l) -eq "3" ]
|
|
|
|
+
|
|
- name: Upload artifact
|
|
- name: Upload artifact
|
|
uses: actions/[email protected]
|
|
uses: actions/[email protected]
|
|
with:
|
|
with:
|
|
@@ -867,8 +933,7 @@ jobs:
|
|
|
|
|
|
deploy:
|
|
deploy:
|
|
if: success() && github.repository_owner == 'HaxeFoundation' && github.event_name != 'pull_request'
|
|
if: success() && github.repository_owner == 'HaxeFoundation' && github.event_name != 'pull_request'
|
|
- needs: [linux-test, linux-arm64, mac-test, windows64-test]
|
|
|
|
- # needs: [linux-test, linux-arm64, mac-test, windows-test, windows64-test]
|
|
|
|
|
|
+ needs: [linux-test, linux-arm64, mac-test, windows-test, windows64-test]
|
|
runs-on: ubuntu-20.04
|
|
runs-on: ubuntu-20.04
|
|
steps:
|
|
steps:
|
|
# this is only needed for to get `COMMIT_DATE`...
|
|
# this is only needed for to get `COMMIT_DATE`...
|
|
@@ -911,9 +976,9 @@ jobs:
|
|
aws s3 cp win64Binaries/*_bin.zip ${HXBUILDS_S3ADDR}/haxe/windows64/${FILE_NAME}.zip
|
|
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/*_installer.zip ${HXBUILDS_S3ADDR}/haxe/windows64-installer/${FILE_NAME}.zip
|
|
aws s3 cp win64Binaries/*.nupkg ${HXBUILDS_S3ADDR}/haxe/windows64-choco/
|
|
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/
|
|
|
|
|
|
+ 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"
|
|
- name: Update "latest"
|
|
if: github.ref == 'refs/heads/development'
|
|
if: github.ref == 'refs/heads/development'
|
|
@@ -931,21 +996,20 @@ jobs:
|
|
aws s3 cp macBinaries/*_installer.tar.gz ${HXBUILDS_S3ADDR}/haxe/mac-installer/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/*_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 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
|
|
|
|
|
|
+ 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,
|
|
# Chocolatey packages have to be named with version number,
|
|
# so let's use web redirection to keep the original file name.
|
|
# 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]}"
|
|
[[ "$HXBUILDS_S3ADDR" =~ s3://([^/]+)(.*) ]] && HXBUILDS_S3BUCKET="${BASH_REMATCH[1]}" && HXBUILDS_S3PATH="${BASH_REMATCH[2]}"
|
|
[[ `echo win64Binaries/*.nupkg` =~ win64Binaries/(.+) ]] && FILE_NAME="${BASH_REMATCH[1]}"
|
|
[[ `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}"
|
|
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}"
|
|
|
|
|
|
+ [[ `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}"
|
|
|
|
|
|
deploy_apidoc:
|
|
deploy_apidoc:
|
|
if: success() && github.repository_owner == 'HaxeFoundation' && github.event_name != 'pull_request'
|
|
if: success() && github.repository_owner == 'HaxeFoundation' && github.event_name != 'pull_request'
|
|
- needs: [linux-test, linux-arm64, mac-test, windows64-test]
|
|
|
|
- # needs: [linux-test, linux-arm64, mac-test, windows-test, windows64-test]
|
|
|
|
|
|
+ needs: [linux-test, linux-arm64, mac-test, windows-test, windows64-test]
|
|
runs-on: ubuntu-20.04
|
|
runs-on: ubuntu-20.04
|
|
steps:
|
|
steps:
|
|
- name: Install dependencies
|
|
- name: Install dependencies
|