From 70e2b6c449862f467886bfa00c6d2755aa262d4d Mon Sep 17 00:00:00 2001 From: Jonas Vautherin Date: Fri, 29 Jan 2021 19:56:13 +0100 Subject: [PATCH 1/2] Create github CI equivalent to current circle CI --- .github/workflows/main.yml | 56 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 .github/workflows/main.yml diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml new file mode 100644 index 0000000..cdcbe7b --- /dev/null +++ b/.github/workflows/main.yml @@ -0,0 +1,56 @@ +name: Dockcross CI + +on: + push: + branches: + - 'master' + pull_request: + branches: + - '*' + +jobs: + base: + name: base + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v2 + - name: build + run: make base + - name: test + run: make base.test + - name: archive base + run: | + mkdir -p cache + docker save -o ./cache/base.tar dockcross/base:latest + - name: save base + uses: actions/upload-artifact@v2 + with: + name: cache + path: ./cache + retention-days: 1 + + image: + name: ${{ matrix.arch_name }} + needs: base + runs-on: ubuntu-20.04 + strategy: + fail-fast: false + matrix: + arch_name: [android-arm, android-arm64, android-x86, android-x86_64, web-wasm, linux-arm64, linux-arm64-musl, linux-armv5, linux-armv5-musl, linux-armv6, linux-armv6-musl, linux-armv7, linux-armv7a, linux-armv7l-musl, linux-s390x, linux-x64, linux-x86, manylinux1-x64, manylinux1-x86, manylinux2010-x64, manylinux2010-x86, manylinux2014-x64, manylinux2014-x86, manylinux2014-aarch64, windows-static-x64, windows-static-x64-posix, windows-static-x86, windows-shared-x64, windows-shared-x64-posix, windows-shared-x86] + steps: + - uses: actions/checkout@v2 + - uses: actions/download-artifact@v2 + with: + name: cache + path: ./cache + - name: load base + run: docker load -i ./cache/base.tar + - name: build + run: make ${{ matrix.arch_name }} + - name: test + run: make ${{ matrix.arch_name }}.test + - name: deploy + if: github.ref == 'master' + run: | + docker login -u ${{ secrets.DOCKER_USER }} -p ${{ secrets.DOCKER_PASS }} + docker image push dockcross/${{ matrix.arch_name }} From 368db3613666a3e60dc85a45e76426805b2d8ad4 Mon Sep 17 00:00:00 2001 From: Jonas Vautherin Date: Mon, 1 Feb 2021 22:22:14 +0100 Subject: [PATCH 2/2] Remove circleci (moved to github actions) --- .circleci/config.yml | 1190 ------------------------------------------ 1 file changed, 1190 deletions(-) delete mode 100644 .circleci/config.yml diff --git a/.circleci/config.yml b/.circleci/config.yml deleted file mode 100644 index e9fa417..0000000 --- a/.circleci/config.yml +++ /dev/null @@ -1,1190 +0,0 @@ -build-settings: &build-settings - machine: true - working_directory: ~/dockcross - -version: 2 -jobs: - base: - <<: *build-settings - steps: - - checkout - - run: - name: base build - command: | - docker pull debian:stretch-slim - make base - mkdir -p ~/docker - docker save -o ~/docker/base.tar debian:stretch-slim dockcross/base:latest - - run: - name: base test - command: | - make base.test - - save_cache: - key: base-assets-{{ .Revision }} - paths: - - ~/docker/base.tar - - ~/dockcross - android-arm: - <<: *build-settings - steps: - - restore_cache: - key: base-assets-{{ .Revision }} - - run: - name: android-arm build - no_output_timeout: 1.5h - command: | - docker load -i ~/docker/base.tar - make android-arm - tagged=$(docker images -q -f 'since=dockcross/android-arm:latest' --format '{{.Repository}}:{{.Tag}}' | grep android-arm) - docker save -o ~/docker/android-arm.tar dockcross/android-arm:latest $tagged - - run: - name: android-arm test - command: | - make android-arm.test - - save_cache: - key: android-arm-assets-{{ .Revision }} - paths: ~/docker/android-arm.tar - android-arm64: - <<: *build-settings - steps: - - restore_cache: - key: base-assets-{{ .Revision }} - - run: - name: android-arm64 build - no_output_timeout: 1.5h - command: | - docker load -i ~/docker/base.tar - make android-arm64 - tagged=$(docker images -q -f 'since=dockcross/android-arm64:latest' --format '{{.Repository}}:{{.Tag}}' | grep android-arm64) - docker save -o ~/docker/android-arm64.tar dockcross/android-arm64:latest $tagged - - run: - name: android-arm64 test - command: | - make android-arm64.test - - save_cache: - key: android-arm64-assets-{{ .Revision }} - paths: ~/docker/android-arm64.tar - android-x86: - <<: *build-settings - steps: - - restore_cache: - key: base-assets-{{ .Revision }} - - run: - name: android-x86 build - no_output_timeout: 1.5h - command: | - docker load -i ~/docker/base.tar - make android-x86 - tagged=$(docker images -q -f 'since=dockcross/android-x86:latest' --format '{{.Repository}}:{{.Tag}}' | grep android-x86) - docker save -o ~/docker/android-x86.tar dockcross/android-x86:latest $tagged - - run: - name: android-x86 test - command: | - make android-x86.test - - save_cache: - key: android-x86-assets-{{ .Revision }} - paths: ~/docker/android-x86.tar - android-x86_64: - <<: *build-settings - steps: - - restore_cache: - key: base-assets-{{ .Revision }} - - run: - name: android-x86_64 build - no_output_timeout: 1.5h - command: | - docker load -i ~/docker/base.tar - make android-x86_64 - tagged=$(docker images -q -f 'since=dockcross/android-x86_64:latest' --format '{{.Repository}}:{{.Tag}}' | grep android-x86_64) - docker save -o ~/docker/android-x86_64.tar dockcross/android-x86_64:latest $tagged - - run: - name: android-x86_64 test - command: | - make android-x86_64.test - - save_cache: - key: android-x86_64-assets-{{ .Revision }} - paths: ~/docker/android-x86_64.tar - web-wasm: - <<: *build-settings - steps: - - restore_cache: - key: base-assets-{{ .Revision }} - - run: - name: web-wasm build - no_output_timeout: 1.5h - command: | - docker load -i ~/docker/base.tar - make web-wasm - tagged=$(docker images -q -f 'since=dockcross/web-wasm:latest' --format '{{.Repository}}:{{.Tag}}' | grep web-wasm) - docker save -o ~/docker/web-wasm.tar dockcross/web-wasm:latest $tagged - - run: - name: web-wasm test - command: | - make web-wasm.test - - save_cache: - key: web-wasm-assets-{{ .Revision }} - paths: ~/docker/web-wasm.tar - linux-arm64: - <<: *build-settings - steps: - - restore_cache: - key: base-assets-{{ .Revision }} - - run: - name: linux-arm64 build - no_output_timeout: 1.5h - command: | - docker load -i ~/docker/base.tar - make linux-arm64 - tagged=$(docker images -q -f 'since=dockcross/linux-arm64:latest' --format '{{.Repository}}:{{.Tag}}' | grep linux-arm64) - docker save -o ~/docker/linux-arm64.tar dockcross/linux-arm64:latest $tagged - - run: - name: linux-arm64 test - command: | - make linux-arm64.test - - save_cache: - key: linux-arm64-assets-{{ .Revision }} - paths: ~/docker/linux-arm64.tar - linux-arm64-musl: - <<: *build-settings - steps: - - restore_cache: - key: base-assets-{{ .Revision }} - - run: - name: linux-arm64-musl build - no_output_timeout: 1.5h - command: | - docker load -i ~/docker/base.tar - make linux-arm64-musl - tagged=$(docker images -q -f 'since=dockcross/linux-arm64-musl:latest' --format '{{.Repository}}:{{.Tag}}' | grep linux-arm64-musl) - docker save -o ~/docker/linux-arm64-musl.tar dockcross/linux-arm64-musl:latest $tagged - - run: - name: linux-arm64-musl test - command: | - make linux-arm64-musl.test - - save_cache: - key: linux-arm64-musl-assets-{{ .Revision }} - paths: ~/docker/linux-arm64-musl.tar - linux-armv5: - <<: *build-settings - steps: - - restore_cache: - key: base-assets-{{ .Revision }} - - run: - name: linux-armv5 build - no_output_timeout: 1.5h - command: | - docker load -i ~/docker/base.tar - make linux-armv5 - tagged=$(docker images -q -f 'since=dockcross/linux-armv5:latest' --format '{{.Repository}}:{{.Tag}}' | grep linux-armv5) - docker save -o ~/docker/linux-armv5.tar dockcross/linux-armv5:latest $tagged - - run: - name: linux-armv5 test - command: | - make linux-armv5.test - - save_cache: - key: linux-armv5-assets-{{ .Revision }} - paths: ~/docker/linux-armv5.tar - linux-armv5-musl: - <<: *build-settings - steps: - - restore_cache: - key: base-assets-{{ .Revision }} - - run: - name: linux-armv5-musl build - no_output_timeout: 1.5h - command: | - docker load -i ~/docker/base.tar - make linux-armv5-musl - tagged=$(docker images -q -f 'since=dockcross/linux-armv5-musl:latest' --format '{{.Repository}}:{{.Tag}}' | grep linux-armv5-musl) - docker save -o ~/docker/linux-armv5-musl.tar dockcross/linux-armv5-musl:latest $tagged - - run: - name: linux-armv5-musl test - command: | - make linux-armv5-musl.test - - save_cache: - key: linux-armv5-musl-assets-{{ .Revision }} - paths: ~/docker/linux-armv5-musl.tar - linux-armv6: - <<: *build-settings - steps: - - restore_cache: - key: base-assets-{{ .Revision }} - - run: - name: linux-armv6 build - no_output_timeout: 1.5h - command: | - docker load -i ~/docker/base.tar - make linux-armv6 - tagged=$(docker images -q -f 'since=dockcross/linux-armv6:latest' --format '{{.Repository}}:{{.Tag}}' | grep linux-armv6) - docker save -o ~/docker/linux-armv6.tar dockcross/linux-armv6:latest $tagged - - run: - name: linux-armv6 test - command: | - make linux-armv6.test - - save_cache: - key: linux-armv6-assets-{{ .Revision }} - paths: ~/docker/linux-armv6.tar - linux-armv6-musl: - <<: *build-settings - steps: - - restore_cache: - key: base-assets-{{ .Revision }} - - run: - name: linux-armv6-musl build - no_output_timeout: 1.5h - command: | - docker load -i ~/docker/base.tar - make linux-armv6-musl - tagged=$(docker images -q -f 'since=dockcross/linux-armv6-musl:latest' --format '{{.Repository}}:{{.Tag}}' | grep linux-armv6-musl) - docker save -o ~/docker/linux-armv6-musl.tar dockcross/linux-armv6-musl:latest $tagged - - run: - name: linux-armv6-musl test - command: | - make linux-armv6-musl.test - - save_cache: - key: linux-armv6-musl-assets-{{ .Revision }} - paths: ~/docker/linux-armv6-musl.tar - linux-armv7: - <<: *build-settings - steps: - - restore_cache: - key: base-assets-{{ .Revision }} - - run: - name: linux-armv7 build - no_output_timeout: 1.5h - command: | - docker load -i ~/docker/base.tar - make linux-armv7 - tagged=$(docker images -q -f 'since=dockcross/linux-armv7:latest' --format '{{.Repository}}:{{.Tag}}' | grep linux-armv7) - docker save -o ~/docker/linux-armv7.tar dockcross/linux-armv7:latest $tagged - - run: - name: linux-armv7 test - command: | - make linux-armv7.test - - save_cache: - key: linux-armv7-assets-{{ .Revision }} - paths: ~/docker/linux-armv7.tar - linux-armv7a: - <<: *build-settings - steps: - - restore_cache: - key: base-assets-{{ .Revision }} - - run: - name: linux-armv7a build - no_output_timeout: 1.5h - command: | - docker load -i ~/docker/base.tar - make linux-armv7a - tagged=$(docker images -q -f 'since=dockcross/linux-armv7a:latest' --format '{{.Repository}}:{{.Tag}}' | grep linux-armv7a) - docker save -o ~/docker/linux-armv7a.tar dockcross/linux-armv7a:latest $tagged - - run: - name: linux-armv7a test - command: | - make linux-armv7a.test - - save_cache: - key: linux-armv7a-assets-{{ .Revision }} - paths: ~/docker/linux-armv7a.tar - linux-armv7l-musl: - <<: *build-settings - steps: - - restore_cache: - key: base-assets-{{ .Revision }} - - run: - name: linux-armv7l-musl build - no_output_timeout: 1.5h - command: | - docker load -i ~/docker/base.tar - make linux-armv7l-musl - tagged=$(docker images -q -f 'since=dockcross/linux-armv7l-musl:latest' --format '{{.Repository}}:{{.Tag}}' | grep linux-armv7l-musl) - docker save -o ~/docker/linux-armv7l-musl.tar dockcross/linux-armv7l-musl:latest $tagged - - run: - name: linux-armv7l-musl test - command: | - make linux-armv7l-musl.test - - save_cache: - key: linux-armv7l-musl-assets-{{ .Revision }} - paths: ~/docker/linux-armv7l-musl.tar - linux-mipsel: - <<: *build-settings - steps: - - restore_cache: - key: base-assets-{{ .Revision }} - # Image build currently broken. See #209 - #- run: - #name: linux-mipsel build - #no_output_timeout: 1.5h - #command: | - #docker load -i ~/docker/base.tar - #make linux-mipsel - #tagged=$(docker images -q -f 'since=dockcross/linux-mipsel:latest' --format '{{.Repository}}:{{.Tag}}' | grep linux-mipsel) - #docker save -o ~/docker/linux-mipsel.tar dockcross/linux-mipsel:latest $tagged - #- run: - #name: linux-mipsel test - #command: | - #make linux-mipsel.test - - save_cache: - key: linux-mipsel-assets-{{ .Revision }} - paths: ~/docker/linux-mipsel.tar - linux-s390x: - <<: *build-settings - steps: - - restore_cache: - key: base-assets-{{ .Revision }} - - run: - name: linux-s390x build - no_output_timeout: 1.5h - command: | - docker load -i ~/docker/base.tar - make linux-s390x - tagged=$(docker images -q -f 'since=dockcross/linux-s390x:latest' --format '{{.Repository}}:{{.Tag}}' | grep linux-s390x) - docker save -o ~/docker/linux-s390x.tar dockcross/linux-s390x:latest $tagged - - run: - name: linux-s390x test - command: | - make linux-s390x.test - - save_cache: - key: linux-s390x-assets-{{ .Revision }} - paths: ~/docker/linux-s390x.tar - linux-ppc64le: - <<: *build-settings - steps: - - restore_cache: - key: base-assets-{{ .Revision }} - - run: - name: linux-ppc64le build - no_output_timeout: 1.5h - command: | - docker load -i ~/docker/base.tar - make linux-ppc64le - tagged=$(docker images -q -f 'since=dockcross/linux-ppc64le:latest' --format '{{.Repository}}:{{.Tag}}' | grep linux-ppc64le) - docker save -o ~/docker/linux-ppc64le.tar dockcross/linux-ppc64le:latest $tagged - - run: - name: linux-ppc64le test - command: | - make linux-ppc64le.test - - save_cache: - key: linux-ppc64le-assets-{{ .Revision }} - paths: ~/docker/linux-ppc64le.tar - linux-x64: - <<: *build-settings - steps: - - restore_cache: - key: base-assets-{{ .Revision }} - - run: - name: linux-x64 build - no_output_timeout: 1.5h - command: | - docker load -i ~/docker/base.tar - make linux-x64 - tagged=$(docker images -q -f 'since=dockcross/linux-x64:latest' --format '{{.Repository}}:{{.Tag}}' | grep linux-x64) - docker save -o ~/docker/linux-x64.tar dockcross/linux-x64:latest $tagged - - run: - name: linux-x64 test - command: | - make linux-x64.test - - save_cache: - key: linux-x64-assets-{{ .Revision }} - paths: ~/docker/linux-x64.tar - linux-x86: - <<: *build-settings - steps: - - restore_cache: - key: base-assets-{{ .Revision }} - - run: - name: linux-x86 build - no_output_timeout: 1.5h - command: | - docker load -i ~/docker/base.tar - make linux-x86 - tagged=$(docker images -q -f 'since=dockcross/linux-x86:latest' --format '{{.Repository}}:{{.Tag}}' | grep linux-x86) - docker save -o ~/docker/linux-x86.tar dockcross/linux-x86:latest $tagged - - run: - name: linux-x86 test - command: | - make linux-x86.test - - save_cache: - key: linux-x86-assets-{{ .Revision }} - paths: ~/docker/linux-x86.tar - manylinux1-x64: - <<: *build-settings - steps: - - restore_cache: - key: base-assets-{{ .Revision }} - - run: - name: manylinux1-x64 build - no_output_timeout: 1.5h - command: | - docker load -i ~/docker/base.tar - make manylinux1-x64 - tagged=$(docker images -q -f 'since=dockcross/manylinux1-x64:latest' --format '{{.Repository}}:{{.Tag}}' | grep manylinux1-x64) - docker save -o ~/docker/manylinux1-x64.tar dockcross/manylinux1-x64:latest $tagged - - run: - name: manylinux1-x64 test - command: | - make manylinux1-x64.test - - save_cache: - key: manylinux1-x64-assets-{{ .Revision }} - paths: ~/docker/manylinux1-x64.tar - manylinux1-x86: - <<: *build-settings - steps: - - restore_cache: - key: base-assets-{{ .Revision }} - - run: - name: manylinux1-x86 build - no_output_timeout: 1.5h - command: | - docker load -i ~/docker/base.tar - make manylinux1-x86 - tagged=$(docker images -q -f 'since=dockcross/manylinux1-x86:latest' --format '{{.Repository}}:{{.Tag}}' | grep manylinux1-x86) - docker save -o ~/docker/manylinux1-x86.tar dockcross/manylinux1-x86:latest $tagged - - run: - name: manylinux1-x86 test - command: | - make manylinux1-x86.test - - save_cache: - key: manylinux1-x86-assets-{{ .Revision }} - paths: ~/docker/manylinux1-x86.tar - manylinux2010-x64: - <<: *build-settings - steps: - - restore_cache: - key: base-assets-{{ .Revision }} - - run: - name: manylinux2010-x64 build - no_output_timeout: 1.5h - command: | - docker load -i ~/docker/base.tar - make manylinux2010-x64 - tagged=$(docker images -q -f 'since=dockcross/manylinux2010-x64:latest' --format '{{.Repository}}:{{.Tag}}' | grep manylinux2010-x64) - docker save -o ~/docker/manylinux2010-x64.tar dockcross/manylinux2010-x64:latest $tagged - - run: - name: manylinux2010-x64 test - command: | - make manylinux2010-x64.test - - save_cache: - key: manylinux2010-x64-assets-{{ .Revision }} - paths: ~/docker/manylinux2010-x64.tar - manylinux2010-x86: - <<: *build-settings - steps: - - restore_cache: - key: base-assets-{{ .Revision }} - - run: - name: manylinux2010-x86 build - no_output_timeout: 1.5h - command: | - docker load -i ~/docker/base.tar - make manylinux2010-x86 - tagged=$(docker images -q -f 'since=dockcross/manylinux2010-x86:latest' --format '{{.Repository}}:{{.Tag}}' | grep manylinux2010-x86) - docker save -o ~/docker/manylinux2010-x86.tar dockcross/manylinux2010-x86:latest $tagged - - run: - name: manylinux2010-x86 test - command: | - make manylinux2010-x86.test - - save_cache: - key: manylinux2010-x86-assets-{{ .Revision }} - paths: ~/docker/manylinux2010-x86.tar - manylinux2014-x64: - <<: *build-settings - steps: - - restore_cache: - key: base-assets-{{ .Revision }} - - run: - name: manylinux2014-x64 build - no_output_timeout: 1.5h - command: | - docker load -i ~/docker/base.tar - make manylinux2014-x64 - tagged=$(docker images -q -f 'since=dockcross/manylinux2014-x64:latest' --format '{{.Repository}}:{{.Tag}}' | grep manylinux2014-x64) - docker save -o ~/docker/manylinux2014-x64.tar dockcross/manylinux2014-x64:latest $tagged - - run: - name: manylinux2014-x64 test - command: | - make manylinux2014-x64.test - - save_cache: - key: manylinux2014-x64-assets-{{ .Revision }} - paths: ~/docker/manylinux2014-x64.tar - manylinux2014-x86: - <<: *build-settings - steps: - - restore_cache: - key: base-assets-{{ .Revision }} - - run: - name: manylinux2014-x86 build - no_output_timeout: 1.5h - command: | - docker load -i ~/docker/base.tar - make manylinux2014-x86 - tagged=$(docker images -q -f 'since=dockcross/manylinux2014-x86:latest' --format '{{.Repository}}:{{.Tag}}' | grep manylinux2014-x86) - docker save -o ~/docker/manylinux2014-x86.tar dockcross/manylinux2014-x86:latest $tagged - - run: - name: manylinux2014-x86 test - command: | - make manylinux2014-x86.test - - save_cache: - key: manylinux2014-x86-assets-{{ .Revision }} - paths: ~/docker/manylinux2014-x86.tar - manylinux2014-aarch64: - <<: *build-settings - steps: - - restore_cache: - key: base-assets-{{ .Revision }} - - run: - name: manylinux2014-aarch64 build - no_output_timeout: 1.5h - command: | - docker load -i ~/docker/base.tar - make manylinux2014-aarch64 - tagged=$(docker images -q -f 'since=dockcross/manylinux2014-aarch64:latest' --format '{{.Repository}}:{{.Tag}}' | grep manylinux2014-aarch64) - docker save -o ~/docker/manylinux2014-aarch64.tar dockcross/manylinux2014-aarch64:latest $tagged - - run: - name: manylinux2014-aarch64 test - command: | - make manylinux2014-aarch64.test - - save_cache: - key: manylinux2014-aarch64-assets-{{ .Revision }} - paths: ~/docker/manylinux2014-aarch64.tar - windows-static-x64: - <<: *build-settings - steps: - - restore_cache: - key: base-assets-{{ .Revision }} - - run: - no_output_timeout: 1.5h - name: windows-static-x64 build - command: | - docker load -i ~/docker/base.tar - make windows-static-x64 - tagged=$(docker images -q -f 'since=dockcross/windows-static-x64:latest' --format '{{.Repository}}:{{.Tag}}' | grep windows-static-x64) - docker save -o ~/docker/windows-static-x64.tar dockcross/windows-static-x64:latest $tagged - - run: - name: windows-static-x64 test - command: | - make windows-static-x64.test - - save_cache: - key: windows-static-x64-assets-{{ .Revision }} - paths: ~/docker/windows-static-x64.tar - windows-static-x64-posix: - <<: *build-settings - steps: - - restore_cache: - key: base-assets-{{ .Revision }} - - run: - no_output_timeout: 1.5h - name: windows-static-x64-posix build - command: | - docker load -i ~/docker/base.tar - make windows-static-x64-posix - tagged=$(docker images -q -f 'since=dockcross/windows-static-x64-posix:latest' --format '{{.Repository}}:{{.Tag}}' | grep windows-static-x64-posix) - docker save -o ~/docker/windows-static-x64-posix.tar dockcross/windows-static-x64-posix:latest $tagged - - run: - name: windows-static-x64-posix test - command: | - make windows-static-x64-posix.test - - save_cache: - key: windows-static-x64-posix-assets-{{ .Revision }} - paths: ~/docker/windows-static-x64-posix.tar - windows-static-x86: - <<: *build-settings - steps: - - restore_cache: - key: base-assets-{{ .Revision }} - - run: - no_output_timeout: 1.5h - name: windows-static-x86 build - command: | - docker load -i ~/docker/base.tar - make windows-static-x86 - tagged=$(docker images -q -f 'since=dockcross/windows-static-x86:latest' --format '{{.Repository}}:{{.Tag}}' | grep windows-static-x86) - docker save -o ~/docker/windows-static-x86.tar dockcross/windows-static-x86:latest $tagged - - run: - name: windows-static-x86 test - command: | - make windows-static-x86.test - - save_cache: - key: windows-static-x86-assets-{{ .Revision }} - paths: ~/docker/windows-static-x86.tar - windows-shared-x64: - <<: *build-settings - steps: - - restore_cache: - key: base-assets-{{ .Revision }} - - run: - no_output_timeout: 1.5h - name: windows-shared-x64 build - command: | - docker load -i ~/docker/base.tar - make windows-shared-x64 - tagged=$(docker images -q -f 'since=dockcross/windows-shared-x64:latest' --format '{{.Repository}}:{{.Tag}}' | grep windows-shared-x64) - docker save -o ~/docker/windows-shared-x64.tar dockcross/windows-shared-x64:latest $tagged - - run: - name: windows-shared-x64 test - command: | - make windows-shared-x64.test - - save_cache: - key: windows-shared-x64-assets-{{ .Revision }} - paths: ~/docker/windows-shared-x64.tar - windows-shared-x64-posix: - <<: *build-settings - steps: - - restore_cache: - key: base-assets-{{ .Revision }} - - run: - no_output_timeout: 1.5h - name: windows-shared-x64-posix build - command: | - docker load -i ~/docker/base.tar - make windows-shared-x64-posix - tagged=$(docker images -q -f 'since=dockcross/windows-shared-x64-posix:latest' --format '{{.Repository}}:{{.Tag}}' | grep windows-shared-x64-posix) - docker save -o ~/docker/windows-shared-x64-posix.tar dockcross/windows-shared-x64-posix:latest $tagged - - run: - name: windows-shared-x64-posix test - command: | - make windows-shared-x64-posix.test - - save_cache: - key: windows-shared-x64-posix-assets-{{ .Revision }} - paths: ~/docker/windows-shared-x64-posix.tar - windows-shared-x86: - <<: *build-settings - steps: - - restore_cache: - key: base-assets-{{ .Revision }} - - run: - no_output_timeout: 1.5h - name: windows-shared-x86 build - command: | - docker load -i ~/docker/base.tar - make windows-shared-x86 - tagged=$(docker images -q -f 'since=dockcross/windows-shared-x86:latest' --format '{{.Repository}}:{{.Tag}}' | grep windows-shared-x86) - docker save -o ~/docker/windows-shared-x86.tar dockcross/windows-shared-x86:latest $tagged - - run: - name: windows-shared-x86 test - command: | - make windows-shared-x86.test - - save_cache: - key: windows-shared-x86-assets-{{ .Revision }} - paths: ~/docker/windows-shared-x86.tar - deploy: - <<: *build-settings - steps: - - restore_cache: - key: base-assets-{{ .Revision }} - - deploy: - name: Deploy base - command: | - docker load -i ~/docker/base.tar - if [ "${CIRCLE_BRANCH}" == "master" ]; then - docker login -u $DOCKER_USER -p $DOCKER_PASS - docker push dockcross/base:latest - fi - - restore_cache: - key: android-arm-assets-{{ .Revision }} - - deploy: - name: Deploy android-arm - command: | - docker load -i ~/docker/android-arm.tar - if [ "${CIRCLE_BRANCH}" == "master" ]; then - docker login -u $DOCKER_USER -p $DOCKER_PASS - docker push dockcross/android-arm:latest - tagged=$(docker images -q -f 'since=dockcross/android-arm:latest' --format '{{.Repository}}:{{.Tag}}' | grep android-arm) - docker push $tagged - fi - - restore_cache: - key: android-arm64-assets-{{ .Revision }} - - deploy: - name: Deploy android-arm64 - command: | - docker load -i ~/docker/android-arm64.tar - if [ "${CIRCLE_BRANCH}" == "master" ]; then - docker login -u $DOCKER_USER -p $DOCKER_PASS - docker push dockcross/android-arm64:latest - tagged=$(docker images -q -f 'since=dockcross/android-arm64:latest' --format '{{.Repository}}:{{.Tag}}' | grep android-arm64) - docker push $tagged - fi - - restore_cache: - key: android-x86-assets-{{ .Revision }} - - deploy: - name: Deploy android-x86 - command: | - docker load -i ~/docker/android-x86.tar - if [ "${CIRCLE_BRANCH}" == "master" ]; then - docker login -u $DOCKER_USER -p $DOCKER_PASS - docker push dockcross/android-x86:latest - tagged=$(docker images -q -f 'since=dockcross/android-x86:latest' --format '{{.Repository}}:{{.Tag}}' | grep android-x86) - docker push $tagged - fi - - restore_cache: - key: android-x86_64-assets-{{ .Revision }} - - deploy: - name: Deploy android-x86_64 - command: | - docker load -i ~/docker/android-x86_64.tar - if [ "${CIRCLE_BRANCH}" == "master" ]; then - docker login -u $DOCKER_USER -p $DOCKER_PASS - docker push dockcross/android-x86_64:latest - tagged=$(docker images -q -f 'since=dockcross/android-x86_64:latest' --format '{{.Repository}}:{{.Tag}}' | grep android-x86_64) - docker push $tagged - fi - - restore_cache: - key: web-wasm-assets-{{ .Revision }} - - deploy: - name: Deploy web-wasm - command: | - docker load -i ~/docker/web-wasm.tar - if [ "${CIRCLE_BRANCH}" == "master" ]; then - docker login -u $DOCKER_USER -p $DOCKER_PASS - docker push dockcross/web-wasm:latest - tagged=$(docker images -q -f 'since=dockcross/web-wasm:latest' --format '{{.Repository}}:{{.Tag}}' | grep web-wasm) - docker push $tagged - fi - - restore_cache: - key: linux-arm64-assets-{{ .Revision }} - - deploy: - name: Deploy linux-arm64 - command: | - docker load -i ~/docker/linux-arm64.tar - if [ "${CIRCLE_BRANCH}" == "master" ]; then - docker login -u $DOCKER_USER -p $DOCKER_PASS - docker push dockcross/linux-arm64:latest - tagged=$(docker images -q -f 'since=dockcross/linux-arm64:latest' --format '{{.Repository}}:{{.Tag}}' | grep linux-arm64) - docker push $tagged - fi - - restore_cache: - key: linux-arm64-musl-assets-{{ .Revision }} - - deploy: - name: Deploy linux-arm64-musl - command: | - docker load -i ~/docker/linux-arm64-musl.tar - if [ "${CIRCLE_BRANCH}" == "master" ]; then - docker login -u $DOCKER_USER -p $DOCKER_PASS - docker push dockcross/linux-arm64-musl:latest - tagged=$(docker images -q -f 'since=dockcross/linux-arm64-musl:latest' --format '{{.Repository}}:{{.Tag}}' | grep linux-arm64-musl) - docker push $tagged - fi - - restore_cache: - key: linux-armv5-assets-{{ .Revision }} - - deploy: - name: Deploy linux-armv5 - command: | - docker load -i ~/docker/linux-armv5.tar - if [ "${CIRCLE_BRANCH}" == "master" ]; then - docker login -u $DOCKER_USER -p $DOCKER_PASS - docker push dockcross/linux-armv5:latest - tagged=$(docker images -q -f 'since=dockcross/linux-armv5:latest' --format '{{.Repository}}:{{.Tag}}' | grep linux-armv5) - docker push $tagged - fi - - restore_cache: - key: linux-armv6-assets-{{ .Revision }} - - deploy: - name: Deploy linux-armv6 - command: | - docker load -i ~/docker/linux-armv6.tar - if [ "${CIRCLE_BRANCH}" == "master" ]; then - docker login -u $DOCKER_USER -p $DOCKER_PASS - docker push dockcross/linux-armv6:latest - tagged=$(docker images -q -f 'since=dockcross/linux-armv6:latest' --format '{{.Repository}}:{{.Tag}}' | grep linux-armv6) - docker push $tagged - fi - - restore_cache: - key: linux-armv6-musl-assets-{{ .Revision }} - - deploy: - name: Deploy linux-armv6-musl - command: | - docker load -i ~/docker/linux-armv6-musl.tar - if [ "${CIRCLE_BRANCH}" == "master" ]; then - docker login -u $DOCKER_USER -p $DOCKER_PASS - docker push dockcross/linux-armv6-musl:latest - tagged=$(docker images -q -f 'since=dockcross/linux-armv6-musl:latest' --format '{{.Repository}}:{{.Tag}}' | grep linux-armv6-musl) - docker push $tagged - fi - - restore_cache: - key: linux-armv7-assets-{{ .Revision }} - - deploy: - name: Deploy linux-armv7 - command: | - docker load -i ~/docker/linux-armv7.tar - if [ "${CIRCLE_BRANCH}" == "master" ]; then - docker login -u $DOCKER_USER -p $DOCKER_PASS - docker push dockcross/linux-armv7:latest - tagged=$(docker images -q -f 'since=dockcross/linux-armv7:latest' --format '{{.Repository}}:{{.Tag}}' | grep linux-armv7) - docker push $tagged - fi - - restore_cache: - key: linux-armv7a-assets-{{ .Revision }} - - deploy: - name: Deploy linux-armv7a - command: | - docker load -i ~/docker/linux-armv7a.tar - if [ "${CIRCLE_BRANCH}" == "master" ]; then - docker login -u $DOCKER_USER -p $DOCKER_PASS - docker push dockcross/linux-armv7a:latest - tagged=$(docker images -q -f 'since=dockcross/linux-armv7a:latest' --format '{{.Repository}}:{{.Tag}}' | grep linux-armv7a) - docker push $tagged - fi - - restore_cache: - key: linux-armv7l-musl-assets-{{ .Revision }} - - deploy: - name: Deploy linux-armv7l-musl - command: | - docker load -i ~/docker/linux-armv7l-musl.tar - if [ "${CIRCLE_BRANCH}" == "master" ]; then - docker login -u $DOCKER_USER -p $DOCKER_PASS - docker push dockcross/linux-armv7l-musl:latest - tagged=$(docker images -q -f 'since=dockcross/linux-armv7l-musl:latest' --format '{{.Repository}}:{{.Tag}}' | grep linux-armv7l-musl) - docker push $tagged - fi - # Image build currently broken. See #209 - #- restore_cache: - #key: linux-mipsel-assets-{{ .Revision }} - #- deploy: - #name: Deploy linux-mipsel - #command: | - #docker load -i ~/docker/linux-mipsel.tar - #if [ "${CIRCLE_BRANCH}" == "master" ]; then - #docker login -u $DOCKER_USER -p $DOCKER_PASS - #docker push dockcross/linux-mipsel:latest - #tagged=$(docker images -q -f 'since=dockcross/linux-mipsel:latest' --format '{{.Repository}}:{{.Tag}}' | grep linux-mipsel) - #docker push $tagged - #fi - - restore_cache: - key: linux-s390x-assets-{{ .Revision }} - - deploy: - name: Deploy linux-s390x - command: | - docker load -i ~/docker/linux-s390x.tar - if [ "${CIRCLE_BRANCH}" == "master" ]; then - docker login -u $DOCKER_USER -p $DOCKER_PASS - docker push dockcross/linux-s390x:latest - tagged=$(docker images -q -f 'since=dockcross/linux-s390x:latest' --format '{{.Repository}}:{{.Tag}}' | grep linux-s390x) - docker push $tagged - fi - # Disabled per Issue #430 - #- restore_cache: - #key: linux-ppc64le-assets-{{ .Revision }} - #- deploy: - #name: Deploy linux-ppc64le - #command: | - #docker load -i ~/docker/linux-ppc64le.tar - #if [ "${CIRCLE_BRANCH}" == "master" ]; then - #docker login -u $DOCKER_USER -p $DOCKER_PASS - #docker push dockcross/linux-ppc64le:latest - #tagged=$(docker images -q -f 'since=dockcross/linux-ppc64le:latest' --format '{{.Repository}}:{{.Tag}}' | grep linux-ppc64le) - #docker push $tagged - #fi - - restore_cache: - key: linux-x64-assets-{{ .Revision }} - - deploy: - name: Deploy linux-x64 - command: | - docker load -i ~/docker/linux-x64.tar - if [ "${CIRCLE_BRANCH}" == "master" ]; then - docker login -u $DOCKER_USER -p $DOCKER_PASS - docker push dockcross/linux-x64:latest - tagged=$(docker images -q -f 'since=dockcross/linux-x64:latest' --format '{{.Repository}}:{{.Tag}}' | grep linux-x64) - docker push $tagged - fi - - restore_cache: - key: linux-x86-assets-{{ .Revision }} - - deploy: - name: Deploy linux-x86 - command: | - docker load -i ~/docker/linux-x86.tar - if [ "${CIRCLE_BRANCH}" == "master" ]; then - docker login -u $DOCKER_USER -p $DOCKER_PASS - docker push dockcross/linux-x86:latest - tagged=$(docker images -q -f 'since=dockcross/linux-x86:latest' --format '{{.Repository}}:{{.Tag}}' | grep linux-x86) - docker push $tagged - fi - - restore_cache: - key: manylinux1-x64-assets-{{ .Revision }} - - deploy: - name: Deploy manylinux1-x64 - command: | - docker load -i ~/docker/manylinux1-x64.tar - if [ "${CIRCLE_BRANCH}" == "master" ]; then - docker login -u $DOCKER_USER -p $DOCKER_PASS - docker push dockcross/manylinux1-x64:latest - tagged=$(docker images -q -f 'since=dockcross/manylinux1-x64:latest' --format '{{.Repository}}:{{.Tag}}' | grep manylinux1-x64) - docker push $tagged - fi - - restore_cache: - key: manylinux1-x86-assets-{{ .Revision }} - - deploy: - name: Deploy manylinux1-x86 - command: | - docker load -i ~/docker/manylinux1-x86.tar - if [ "${CIRCLE_BRANCH}" == "master" ]; then - docker login -u $DOCKER_USER -p $DOCKER_PASS - docker push dockcross/manylinux1-x86:latest - tagged=$(docker images -q -f 'since=dockcross/manylinux1-x86:latest' --format '{{.Repository}}:{{.Tag}}' | grep manylinux1-x86) - docker push $tagged - fi - - restore_cache: - key: manylinux2010-x64-assets-{{ .Revision }} - - deploy: - name: Deploy manylinux2010-x64 - command: | - docker load -i ~/docker/manylinux2010-x64.tar - if [ "${CIRCLE_BRANCH}" == "master" ]; then - docker login -u $DOCKER_USER -p $DOCKER_PASS - docker push dockcross/manylinux2010-x64:latest - tagged=$(docker images -q -f 'since=dockcross/manylinux2010-x64:latest' --format '{{.Repository}}:{{.Tag}}' | grep manylinux2010-x64) - docker push $tagged - fi - - restore_cache: - key: manylinux2010-x86-assets-{{ .Revision }} - - deploy: - name: Deploy manylinux2010-x86 - command: | - docker load -i ~/docker/manylinux2010-x86.tar - if [ "${CIRCLE_BRANCH}" == "master" ]; then - docker login -u $DOCKER_USER -p $DOCKER_PASS - docker push dockcross/manylinux2010-x86:latest - tagged=$(docker images -q -f 'since=dockcross/manylinux2010-x86:latest' --format '{{.Repository}}:{{.Tag}}' | grep manylinux2010-x86) - docker push $tagged - fi - - restore_cache: - key: manylinux2014-x64-assets-{{ .Revision }} - - deploy: - name: Deploy manylinux2014-x64 - command: | - docker load -i ~/docker/manylinux2014-x64.tar - if [ "${CIRCLE_BRANCH}" == "master" ]; then - docker login -u $DOCKER_USER -p $DOCKER_PASS - docker push dockcross/manylinux2014-x64:latest - tagged=$(docker images -q -f 'since=dockcross/manylinux2014-x64:latest' --format '{{.Repository}}:{{.Tag}}' | grep manylinux2014-x64) - docker push $tagged - fi - - restore_cache: - key: manylinux2014-x86-assets-{{ .Revision }} - - deploy: - name: Deploy manylinux2014-x86 - command: | - docker load -i ~/docker/manylinux2014-x86.tar - if [ "${CIRCLE_BRANCH}" == "master" ]; then - docker login -u $DOCKER_USER -p $DOCKER_PASS - docker push dockcross/manylinux2014-x86:latest - tagged=$(docker images -q -f 'since=dockcross/manylinux2014-x86:latest' --format '{{.Repository}}:{{.Tag}}' | grep manylinux2014-x86) - docker push $tagged - fi - - restore_cache: - key: manylinux2014-aarch64-assets-{{ .Revision }} - - deploy: - name: Deploy manylinux2014-aarch64 - command: | - docker load -i ~/docker/manylinux2014-x64.tar - docker load -i ~/docker/manylinux2014-aarch64.tar - if [ "${CIRCLE_BRANCH}" == "master" ]; then - docker login -u $DOCKER_USER -p $DOCKER_PASS - docker push dockcross/manylinux2014-aarch64:latest - tagged=$(docker images -q -f 'since=dockcross/manylinux2014-aarch64:latest' --format '{{.Repository}}:{{.Tag}}' | grep manylinux2014-aarch64) - docker push $tagged - fi - - restore_cache: - key: windows-static-x64-assets-{{ .Revision }} - - deploy: - name: Deploy windows-static-x64 - command: | - docker load -i ~/docker/windows-static-x64.tar - if [ "${CIRCLE_BRANCH}" == "master" ]; then - docker login -u $DOCKER_USER -p $DOCKER_PASS - docker push dockcross/windows-static-x64:latest - tagged=$(docker images -q -f 'since=dockcross/windows-static-x64:latest' --format '{{.Repository}}:{{.Tag}}' | grep windows-static-x64) - docker push $tagged - fi - - restore_cache: - key: windows-static-x64-posix-assets-{{ .Revision }} - - deploy: - name: Deploy windows-static-x64-posix - command: | - docker load -i ~/docker/windows-static-x64-posix.tar - if [ "${CIRCLE_BRANCH}" == "master" ]; then - docker login -u $DOCKER_USER -p $DOCKER_PASS - docker push dockcross/windows-static-x64-posix:latest - tagged=$(docker images -q -f 'since=dockcross/windows-static-x64-posix:latest' --format '{{.Repository}}:{{.Tag}}' | grep windows-static-x64-posix) - docker push $tagged - fi - - restore_cache: - key: windows-static-x86-assets-{{ .Revision }} - - deploy: - name: Deploy windows-static-x86 - command: | - docker load -i ~/docker/windows-static-x86.tar - if [ "${CIRCLE_BRANCH}" == "master" ]; then - docker login -u $DOCKER_USER -p $DOCKER_PASS - docker push dockcross/windows-static-x86:latest - tagged=$(docker images -q -f 'since=dockcross/windows-static-x86:latest' --format '{{.Repository}}:{{.Tag}}' | grep windows-static-x86) - docker push $tagged - fi - - restore_cache: - key: windows-shared-x64-assets-{{ .Revision }} - - deploy: - name: Deploy windows-shared-x64 - command: | - docker load -i ~/docker/windows-shared-x64.tar - if [ "${CIRCLE_BRANCH}" == "master" ]; then - docker login -u $DOCKER_USER -p $DOCKER_PASS - docker push dockcross/windows-shared-x64:latest - tagged=$(docker images -q -f 'since=dockcross/windows-shared-x64:latest' --format '{{.Repository}}:{{.Tag}}' | grep windows-shared-x64) - docker push $tagged - fi - - restore_cache: - key: windows-shared-x64-posix-assets-{{ .Revision }} - - deploy: - name: Deploy windows-shared-x64-posix - command: | - docker load -i ~/docker/windows-shared-x64-posix.tar - if [ "${CIRCLE_BRANCH}" == "master" ]; then - docker login -u $DOCKER_USER -p $DOCKER_PASS - docker push dockcross/windows-shared-x64-posix:latest - tagged=$(docker images -q -f 'since=dockcross/windows-shared-x64-posix:latest' --format '{{.Repository}}:{{.Tag}}' | grep windows-shared-x64-posix) - docker push $tagged - fi - - restore_cache: - key: windows-shared-x86-assets-{{ .Revision }} - - deploy: - name: Deploy windows-shared-x86 - command: | - docker load -i ~/docker/windows-shared-x86.tar - if [ "${CIRCLE_BRANCH}" == "master" ]; then - docker login -u $DOCKER_USER -p $DOCKER_PASS - docker push dockcross/windows-shared-x86:latest - tagged=$(docker images -q -f 'since=dockcross/windows-shared-x86:latest' --format '{{.Repository}}:{{.Tag}}' | grep windows-shared-x86) - docker push $tagged - fi - -workflows: - version: 2 - build-test-deploy: - jobs: - - base - - android-arm: - requires: - - base - - android-arm64: - requires: - - base - - android-x86: - requires: - - base - - android-x86_64: - requires: - - base - - web-wasm: - requires: - - base - - linux-arm64: - requires: - - base - - linux-arm64-musl: - requires: - - base - - linux-armv5: - requires: - - base - - linux-armv6: - requires: - - base - - linux-armv6-musl: - requires: - - base - - linux-armv7: - requires: - - base - - linux-armv7a: - requires: - - base - - linux-armv7l-musl: - requires: - - base - # Image build currently broken. See #209 - #- linux-mipsel: - #requires: - #- base - - linux-s390x: - requires: - - base - # Disabled per Issue #430 - #- linux-ppc64le: - #requires: - #- base - - linux-x64: - requires: - - base - - linux-x86: - requires: - - base - - manylinux1-x64: - requires: - - base - - manylinux1-x86: - requires: - - base - - manylinux2010-x64: - requires: - - base - - manylinux2010-x86: - requires: - - base - - manylinux2014-x64: - requires: - - base - - manylinux2014-x86: - requires: - - base - - manylinux2014-aarch64: - requires: - - base - - manylinux2014-x64 - - windows-static-x64: - requires: - - base - - windows-static-x64-posix: - requires: - - base - - windows-static-x86: - requires: - - base - - windows-shared-x64: - requires: - - base - - windows-shared-x64-posix: - requires: - - base - - windows-shared-x86: - requires: - - base - - deploy: - requires: - - base - - android-arm - - android-arm64 - - android-x86 - - android-x86_64 - - web-wasm - - linux-arm64 - - linux-arm64-musl - - linux-armv5 - - linux-armv6 - - linux-armv7 - - linux-armv7a - - linux-armv7l-musl - #- linux-mipsel - - linux-s390x - #- linux-ppc64le - - linux-x64 - - linux-x86 - - manylinux1-x64 - - manylinux1-x86 - - manylinux2010-x64 - - manylinux2010-x86 - - manylinux2014-x64 - - manylinux2014-x86 - - manylinux2014-aarch64 - - windows-static-x64 - - windows-static-x64-posix - - windows-static-x86 - - windows-shared-x64 - - windows-shared-x64-posix - - windows-shared-x86