# This is the Github action to build and push the tinygo/tinygo-dev Docker image. # If you are looking for the tinygo/tinygo "release" Docker image please see # https://github.com/tinygo-org/docker # name: Docker on: push: branches: [ dev, fix-docker-llvm-build ] concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true jobs: push_to_registry: name: build-push-dev runs-on: ubuntu-latest permissions: packages: write contents: read steps: - name: Free Disk space shell: bash run: | df -h sudo rm -rf /opt/hostedtoolcache sudo rm -rf /usr/local/lib/android sudo rm -rf /usr/share/dotnet sudo rm -rf /opt/ghc sudo rm -rf /usr/local/graalvm sudo rm -rf /usr/local/share/boost df -h - name: Check out the repo uses: actions/checkout@v4 with: submodules: recursive - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 - name: Docker meta id: meta uses: docker/metadata-action@v5 with: images: | tinygo/tinygo-dev ghcr.io/${{ github.repository_owner }}/tinygo-dev tags: | type=sha,format=long type=raw,value=latest - name: Log in to Docker Hub uses: docker/login-action@v3 with: username: ${{ secrets.DOCKER_HUB_USERNAME }} password: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }} - name: Log in to Github Container Registry uses: docker/login-action@v3 with: registry: ghcr.io username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} - name: Build and push uses: docker/build-push-action@v5 with: context: . push: true tags: ${{ steps.meta.outputs.tags }} labels: ${{ steps.meta.outputs.labels }} cache-from: type=gha cache-to: type=gha,mode=max - name: Trigger Drivers repo build on Github Actions run: | curl -X POST \ -H "Authorization: Bearer ${{secrets.GHA_ACCESS_TOKEN}}" \ -H "Accept: application/vnd.github.v3+json" \ https://api.github.com/repos/tinygo-org/drivers/actions/workflows/build.yml/dispatches \ -d '{"ref": "dev"}' - name: Trigger Bluetooth repo build on Github Actions run: | curl -X POST \ -H "Authorization: Bearer ${{secrets.GHA_ACCESS_TOKEN}}" \ -H "Accept: application/vnd.github.v3+json" \ https://api.github.com/repos/tinygo-org/bluetooth/actions/workflows/linux.yml/dispatches \ -d '{"ref": "dev"}' - name: Trigger TinyFS repo build on Github Actions run: | curl -X POST \ -H "Authorization: Bearer ${{secrets.GHA_ACCESS_TOKEN}}" \ -H "Accept: application/vnd.github.v3+json" \ https://api.github.com/repos/tinygo-org/tinyfs/actions/workflows/build.yml/dispatches \ -d '{"ref": "dev"}' - name: Trigger TinyFont repo build on Github Actions run: | curl -X POST \ -H "Authorization: Bearer ${{secrets.GHA_ACCESS_TOKEN}}" \ -H "Accept: application/vnd.github.v3+json" \ https://api.github.com/repos/tinygo-org/tinyfont/actions/workflows/build.yml/dispatches \ -d '{"ref": "dev"}' - name: Trigger TinyDraw repo build on Github Actions run: | curl -X POST \ -H "Authorization: Bearer ${{secrets.GHA_ACCESS_TOKEN}}" \ -H "Accept: application/vnd.github.v3+json" \ https://api.github.com/repos/tinygo-org/tinydraw/actions/workflows/build.yml/dispatches \ -d '{"ref": "dev"}' - name: Trigger TinyTerm repo build on Github Actions run: | curl -X POST \ -H "Authorization: Bearer ${{secrets.GHA_ACCESS_TOKEN}}" \ -H "Accept: application/vnd.github.v3+json" \ https://api.github.com/repos/tinygo-org/tinyterm/actions/workflows/build.yml/dispatches \ -d '{"ref": "dev"}'