name: linux_build on: schedule: - cron: '0 0 * * *' push: pull_request: branches: [ master ] jobs: linux: runs-on: ubuntu-latest container: ${{ matrix.image }} strategy: fail-fast: false matrix: vscode_arch: [x64, arm64, armhf] include: - vscode_arch: x64 npm_arch: x64 image: vscodehub.azurecr.io/vscode-linux-build-agent:x64 - vscode_arch: arm64 npm_arch: arm64 image: vscodehub.azurecr.io/vscode-linux-build-agent:buster-arm64 - vscode_arch: armhf npm_arch: armv7l image: vscodehub.azurecr.io/vscode-linux-build-agent:buster-armhf env: OS_NAME: 'linux' VSCODE_ARCH: ${{ matrix.vscode_arch }} steps: - uses: actions/checkout@v2 - name: Setup Node.js environment uses: actions/setup-node@v1.4.3 with: node-version: 12.14.1 - name: Clone VSCode repo run: | . get_repo.sh echo "::set-env name=LATEST_MS_TAG::$LATEST_MS_TAG" echo "::set-env name=LATEST_MS_COMMIT::$LATEST_MS_COMMIT" - name: Check existing VSCodium tags/releases env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} run: | . check_tags.sh echo "::set-env name=SHOULD_BUILD::$SHOULD_BUILD" - name: Build env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} npm_config_arch: ${{ matrix.npm_arch }} run: ./build.sh if: env.SHOULD_BUILD == 'yes' - name: Zip release run: | cd VSCode-linux-${VSCODE_ARCH} tar czf ../VSCodium-linux-${VSCODE_ARCH}-${LATEST_MS_TAG}.tar.gz . if: env.SHOULD_BUILD == 'yes' - name: Generate shasums run: ./sum.sh if: env.SHOULD_BUILD == 'yes' - name: Release uses: softprops/action-gh-release@v1 if: env.SHOULD_BUILD == 'yes' with: tag_name: ${{ env.LATEST_MS_TAG }} files: | ./*.sha256 ./*.zip ./*.tar.gz ./*.deb ./*.rpm ./*.AppImage ./*.AppImage.zsync env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Update versions repo if: env.SHOULD_BUILD == 'yes' run: ./update_version.sh env: GITHUB_TOKEN: ${{ secrets.STRONGER_GITHUB_TOKEN }} GITHUB_USERNAME: ${{ github.repository_owner }}