|
@@ -240,14 +240,14 @@ jobs:
|
|
registry: ghcr.io
|
|
registry: ghcr.io
|
|
username: ${{ github.actor }}
|
|
username: ${{ github.actor }}
|
|
password: ${{ secrets.GITHUB_TOKEN }}
|
|
password: ${{ secrets.GITHUB_TOKEN }}
|
|
-
|
|
|
|
|
|
+
|
|
- name: Install Earthly
|
|
- name: Install Earthly
|
|
run: sudo /bin/sh -c 'wget https://github.com/earthly/earthly/releases/latest/download/earthly-linux-amd64 -O /usr/local/bin/earthly && chmod +x /usr/local/bin/earthly && /usr/local/bin/earthly bootstrap --with-autocomplete'
|
|
run: sudo /bin/sh -c 'wget https://github.com/earthly/earthly/releases/latest/download/earthly-linux-amd64 -O /usr/local/bin/earthly && chmod +x /usr/local/bin/earthly && /usr/local/bin/earthly bootstrap --with-autocomplete'
|
|
-
|
|
|
|
|
|
+
|
|
- uses: actions/checkout@main
|
|
- uses: actions/checkout@main
|
|
with:
|
|
with:
|
|
submodules: recursive
|
|
submodules: recursive
|
|
-
|
|
|
|
|
|
+
|
|
- name: Set ADD_REVISION=1 for non-release
|
|
- name: Set ADD_REVISION=1 for non-release
|
|
if: ${{ !startsWith(github.ref, 'refs/tags/') }}
|
|
if: ${{ !startsWith(github.ref, 'refs/tags/') }}
|
|
run: echo "ADD_REVISION=1" >> $GITHUB_ENV
|
|
run: echo "ADD_REVISION=1" >> $GITHUB_ENV
|
|
@@ -256,32 +256,32 @@ jobs:
|
|
run: earthly --platform=linux/amd64 --remote-cache=ghcr.io/$(echo ${{ github.repository }} | tr '[:upper:]' '[:lower:]'):cache +build --ADD_REVISION=$ADD_REVISION
|
|
run: earthly --platform=linux/amd64 --remote-cache=ghcr.io/$(echo ${{ github.repository }} | tr '[:upper:]' '[:lower:]'):cache +build --ADD_REVISION=$ADD_REVISION
|
|
env:
|
|
env:
|
|
EARTHLY_PUSH: "${{ github.ref == 'refs/heads/develop' }}"
|
|
EARTHLY_PUSH: "${{ github.ref == 'refs/heads/develop' }}"
|
|
-
|
|
|
|
- - name: Upload artifact
|
|
|
|
- uses: actions/[email protected]
|
|
|
|
- with:
|
|
|
|
- name: linuxBinaries
|
|
|
|
- path: out/linux/amd64
|
|
|
|
-
|
|
|
|
|
|
+
|
|
# https://stackoverflow.com/questions/58033366/how-to-get-current-branch-within-github-actions
|
|
# https://stackoverflow.com/questions/58033366/how-to-get-current-branch-within-github-actions
|
|
- name: Extract branch name
|
|
- name: Extract branch name
|
|
id: extract_branch
|
|
id: extract_branch
|
|
shell: bash
|
|
shell: bash
|
|
run: echo "##[set-output name=branch;]$(echo ${GITHUB_REF#refs/heads/})"
|
|
run: echo "##[set-output name=branch;]$(echo ${GITHUB_REF#refs/heads/})"
|
|
-
|
|
|
|
|
|
+
|
|
- name: Build xmldoc
|
|
- name: Build xmldoc
|
|
- run: earthly --remote-cache=ghcr.io/$(echo ${{ github.repository }} | tr '[:upper:]' '[:lower:]'):cache +xmldoc --COMMIT=$GITHUB_SHA --BRANCH=${{ steps.extract_branch.outputs.branch }}
|
|
|
|
|
|
+ run: earthly --remote-cache=ghcr.io/$(echo ${{ github.repository }} | tr '[:upper:]' '[:lower:]'):cache-amd64 +xmldoc --COMMIT=$GITHUB_SHA --BRANCH=${{ steps.extract_branch.outputs.branch }}
|
|
env:
|
|
env:
|
|
EARTHLY_PUSH: "${{ github.ref == 'refs/heads/develop' }}"
|
|
EARTHLY_PUSH: "${{ github.ref == 'refs/heads/develop' }}"
|
|
-
|
|
|
|
|
|
+
|
|
- name: Upload xmldoc artifact
|
|
- name: Upload xmldoc artifact
|
|
uses: actions/[email protected]
|
|
uses: actions/[email protected]
|
|
with:
|
|
with:
|
|
name: xmldoc
|
|
name: xmldoc
|
|
path: extra/doc
|
|
path: extra/doc
|
|
-
|
|
|
|
|
|
+
|
|
|
|
+ - name: Upload artifact
|
|
|
|
+ uses: actions/[email protected]
|
|
|
|
+ with:
|
|
|
|
+ name: linuxBinaries
|
|
|
|
+ path: out/linux/amd64
|
|
|
|
+
|
|
linux-arm64-build:
|
|
linux-arm64-build:
|
|
- runs-on: ubuntu-20.04
|
|
|
|
|
|
+ runs-on: ubuntu-18.04
|
|
env:
|
|
env:
|
|
OPAMYES: 1
|
|
OPAMYES: 1
|
|
steps:
|
|
steps:
|
|
@@ -291,23 +291,21 @@ jobs:
|
|
registry: ghcr.io
|
|
registry: ghcr.io
|
|
username: ${{ github.actor }}
|
|
username: ${{ github.actor }}
|
|
password: ${{ secrets.GITHUB_TOKEN }}
|
|
password: ${{ secrets.GITHUB_TOKEN }}
|
|
- # https://docs.github.com/en/actions/learn-github-actions/contexts#github-context
|
|
|
|
- # github.repository_owner
|
|
|
|
-
|
|
|
|
|
|
+
|
|
|
|
+ - name: Install Earthly
|
|
|
|
+ run: sudo /bin/sh -c 'wget https://github.com/earthly/earthly/releases/latest/download/earthly-linux-amd64 -O /usr/local/bin/earthly && chmod +x /usr/local/bin/earthly && /usr/local/bin/earthly bootstrap --with-autocomplete'
|
|
|
|
+
|
|
- name: Set up QEMU
|
|
- name: Set up QEMU
|
|
id: qemu
|
|
id: qemu
|
|
uses: docker/setup-qemu-action@v1
|
|
uses: docker/setup-qemu-action@v1
|
|
with:
|
|
with:
|
|
image: tonistiigi/binfmt:latest
|
|
image: tonistiigi/binfmt:latest
|
|
platforms: all
|
|
platforms: all
|
|
-
|
|
|
|
- - name: Install Earthly
|
|
|
|
- run: sudo /bin/sh -c 'wget https://github.com/earthly/earthly/releases/latest/download/earthly-linux-amd64 -O /usr/local/bin/earthly && chmod +x /usr/local/bin/earthly && /usr/local/bin/earthly bootstrap --with-autocomplete'
|
|
|
|
-
|
|
|
|
|
|
+
|
|
- uses: actions/checkout@main
|
|
- uses: actions/checkout@main
|
|
with:
|
|
with:
|
|
submodules: recursive
|
|
submodules: recursive
|
|
-
|
|
|
|
|
|
+
|
|
- name: Set ADD_REVISION=1 for non-release
|
|
- name: Set ADD_REVISION=1 for non-release
|
|
if: ${{ !startsWith(github.ref, 'refs/tags/') }}
|
|
if: ${{ !startsWith(github.ref, 'refs/tags/') }}
|
|
run: echo "ADD_REVISION=1" >> $GITHUB_ENV
|
|
run: echo "ADD_REVISION=1" >> $GITHUB_ENV
|
|
@@ -316,13 +314,12 @@ jobs:
|
|
run: earthly --platform=linux/arm64 --remote-cache=ghcr.io/$(echo ${{ github.repository }} | tr '[:upper:]' '[:lower:]'):cache-arm64 +build --ADD_REVISION=$ADD_REVISION
|
|
run: earthly --platform=linux/arm64 --remote-cache=ghcr.io/$(echo ${{ github.repository }} | tr '[:upper:]' '[:lower:]'):cache-arm64 +build --ADD_REVISION=$ADD_REVISION
|
|
env:
|
|
env:
|
|
EARTHLY_PUSH: "${{ github.ref == 'refs/heads/develop' }}"
|
|
EARTHLY_PUSH: "${{ github.ref == 'refs/heads/develop' }}"
|
|
-
|
|
|
|
|
|
+
|
|
- name: Upload artifact
|
|
- name: Upload artifact
|
|
uses: actions/[email protected]
|
|
uses: actions/[email protected]
|
|
with:
|
|
with:
|
|
name: linuxArm64Binaries
|
|
name: linuxArm64Binaries
|
|
path: out/linux/arm64
|
|
path: out/linux/arm64
|
|
-
|
|
|
|
|
|
|
|
mac-build:
|
|
mac-build:
|
|
runs-on: macos-latest
|
|
runs-on: macos-latest
|
|
@@ -635,8 +632,6 @@ jobs:
|
|
runs-on: ubuntu-18.04
|
|
runs-on: ubuntu-18.04
|
|
env:
|
|
env:
|
|
HXCPP_COMPILE_CACHE: ~/hxcache
|
|
HXCPP_COMPILE_CACHE: ~/hxcache
|
|
- strategy:
|
|
|
|
- fail-fast: false
|
|
|
|
steps:
|
|
steps:
|
|
- name: Login to GitHub Container Registry
|
|
- name: Login to GitHub Container Registry
|
|
uses: docker/login-action@v1
|
|
uses: docker/login-action@v1
|
|
@@ -644,76 +639,33 @@ jobs:
|
|
registry: ghcr.io
|
|
registry: ghcr.io
|
|
username: ${{ github.actor }}
|
|
username: ${{ github.actor }}
|
|
password: ${{ secrets.GITHUB_TOKEN }}
|
|
password: ${{ secrets.GITHUB_TOKEN }}
|
|
-
|
|
|
|
|
|
+
|
|
- uses: actions/checkout@main
|
|
- uses: actions/checkout@main
|
|
with:
|
|
with:
|
|
submodules: recursive
|
|
submodules: recursive
|
|
-
|
|
|
|
|
|
+
|
|
- name: Set up QEMU
|
|
- name: Set up QEMU
|
|
id: qemu
|
|
id: qemu
|
|
uses: docker/setup-qemu-action@v1
|
|
uses: docker/setup-qemu-action@v1
|
|
with:
|
|
with:
|
|
image: tonistiigi/binfmt:latest
|
|
image: tonistiigi/binfmt:latest
|
|
platforms: all
|
|
platforms: all
|
|
-
|
|
|
|
|
|
+
|
|
- name: Install Earthly
|
|
- name: Install Earthly
|
|
run: sudo /bin/sh -c 'wget https://github.com/earthly/earthly/releases/latest/download/earthly-linux-amd64 -O /usr/local/bin/earthly && chmod +x /usr/local/bin/earthly && /usr/local/bin/earthly bootstrap --with-autocomplete'\
|
|
run: sudo /bin/sh -c 'wget https://github.com/earthly/earthly/releases/latest/download/earthly-linux-amd64 -O /usr/local/bin/earthly && chmod +x /usr/local/bin/earthly && /usr/local/bin/earthly bootstrap --with-autocomplete'\
|
|
-
|
|
|
|
|
|
+
|
|
- name: Test
|
|
- name: Test
|
|
if: success() && !(matrix.SAUCE && matrix.SAUCE_ACCESS_KEY)
|
|
if: success() && !(matrix.SAUCE && matrix.SAUCE_ACCESS_KEY)
|
|
run: earthly --platform=linux/amd64 --remote-cache=ghcr.io/$(echo ${{ github.repository }} | tr '[:upper:]' '[:lower:]'):cache +test-all
|
|
run: earthly --platform=linux/amd64 --remote-cache=ghcr.io/$(echo ${{ github.repository }} | tr '[:upper:]' '[:lower:]'):cache +test-all
|
|
env:
|
|
env:
|
|
EARTHLY_PUSH: "${{ github.ref == 'refs/heads/develop' }}"
|
|
EARTHLY_PUSH: "${{ github.ref == 'refs/heads/develop' }}"
|
|
-
|
|
|
|
|
|
+
|
|
- name: Test (with SauceLabs)
|
|
- name: Test (with SauceLabs)
|
|
if: success() && matrix.SAUCE && matrix.SAUCE_ACCESS_KEY
|
|
if: success() && matrix.SAUCE && matrix.SAUCE_ACCESS_KEY
|
|
run: earthly --platform=linux/amd64 --remote-cache=ghcr.io/$(echo ${{ github.repository }} | tr '[:upper:]' '[:lower:]'):cache +test --TEST=js
|
|
run: earthly --platform=linux/amd64 --remote-cache=ghcr.io/$(echo ${{ github.repository }} | tr '[:upper:]' '[:lower:]'):cache +test --TEST=js
|
|
env:
|
|
env:
|
|
EARTHLY_PUSH: "${{ github.ref == 'refs/heads/develop' }}"
|
|
EARTHLY_PUSH: "${{ github.ref == 'refs/heads/develop' }}"
|
|
SAUCE_ACCESS_KEY: matrix.SAUCE_ACCESS_KEY
|
|
SAUCE_ACCESS_KEY: matrix.SAUCE_ACCESS_KEY
|
|
-
|
|
|
|
- linux-arm64-test:
|
|
|
|
- needs: linux-arm64-build
|
|
|
|
- runs-on: ubuntu-20.04
|
|
|
|
- env:
|
|
|
|
- HXCPP_COMPILE_CACHE: ~/hxcache
|
|
|
|
- strategy:
|
|
|
|
- fail-fast: false
|
|
|
|
- steps:
|
|
|
|
- - name: Login to GitHub Container Registry
|
|
|
|
- uses: docker/login-action@v1
|
|
|
|
- with:
|
|
|
|
- registry: ghcr.io
|
|
|
|
- username: ${{ github.actor }}
|
|
|
|
- password: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
-
|
|
|
|
- - uses: actions/checkout@main
|
|
|
|
- with:
|
|
|
|
- submodules: recursive
|
|
|
|
-
|
|
|
|
- # - name: Set up QEMU
|
|
|
|
- # id: qemu
|
|
|
|
- # uses: docker/setup-qemu-action@v1
|
|
|
|
- # with:
|
|
|
|
- # image: tonistiigi/binfmt:latest
|
|
|
|
- # platforms: all
|
|
|
|
-
|
|
|
|
- # - name: Install Earthly
|
|
|
|
- # run: sudo /bin/sh -c 'wget https://github.com/earthly/earthly/releases/latest/download/earthly-linux-amd64 -O /usr/local/bin/earthly && chmod +x /usr/local/bin/earthly && /usr/local/bin/earthly bootstrap --with-autocomplete'\
|
|
|
|
-
|
|
|
|
- # - name: Test
|
|
|
|
- # if: success() && !(matrix.SAUCE && matrix.SAUCE_ACCESS_KEY)
|
|
|
|
- # run: earthly --platform=linux/arm64 --remote-cache=ghcr.io/$(echo ${{ github.repository }} | tr '[:upper:]' '[:lower:]'):cache-arm64 +test-all
|
|
|
|
- # env:
|
|
|
|
- # EARTHLY_PUSH: "${{ github.ref == 'refs/heads/develop' }}"
|
|
|
|
-
|
|
|
|
- # - name: Test (with SauceLabs)
|
|
|
|
- # if: success() && matrix.SAUCE && matrix.SAUCE_ACCESS_KEY
|
|
|
|
- # run: earthly --platform=linux/arm64 --remote-cache=ghcr.io/$(echo ${{ github.repository }} | tr '[:upper:]' '[:lower:]'):cache-arm64 +test --TEST=js
|
|
|
|
- # env:
|
|
|
|
- # EARTHLY_PUSH: "${{ github.ref == 'refs/heads/develop' }}"
|
|
|
|
- # SAUCE_ACCESS_KEY: matrix.SAUCE_ACCESS_KEY
|
|
|
|
-
|
|
|
|
|
|
|
|
mac-test:
|
|
mac-test:
|
|
needs: mac-build
|
|
needs: mac-build
|
|
@@ -801,7 +753,7 @@ jobs:
|
|
|
|
|
|
deploy:
|
|
deploy:
|
|
if: github.event_name != 'pull_request'
|
|
if: github.event_name != 'pull_request'
|
|
- needs: [linux-test, linux-arm64-test, mac-test, windows-test, windows64-test]
|
|
|
|
|
|
+ needs: [linux-test, linux-arm64-build, mac-test, windows-test, windows64-test]
|
|
runs-on: ubuntu-18.04
|
|
runs-on: ubuntu-18.04
|
|
steps:
|
|
steps:
|
|
# this is only needed for to get `COMMIT_DATE`...
|
|
# this is only needed for to get `COMMIT_DATE`...
|