name: Build devcontainer on: push: branches: [ main ] paths: [ '.github/.devcontainer/**' ] schedule: - cron: '4 20 28 * *' jobs: build: name: Build devcontainer runs-on: ubuntu-latest timeout-minutes: 120 permissions: contents: read packages: write steps: - name: Checkout uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 - name: Set up QEMU for multi-architecture builds uses: docker/setup-qemu-action@29109295f81e9208d7d86ff1c6c12d2833863392 #v3.6.0 - name: Setup Docker buildx for multi-architecture builds uses: docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435 #v3.11.1 - name: Login to GitHub Container Registry uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772 #v3.4.0 with: registry: ghcr.io username: ${{ github.repository_owner }} password: ${{ secrets.GITHUB_TOKEN }} - name: Pre-build dev container image uses: devcontainers/ci@8bf61b26e9c3a98f69cb6ce2f88d24ff59b785c6 #v0.3.1900000417 with: subFolder: ./.github platform: linux/amd64,linux/arm64 imageName: ghcr.io/vehagn/homelab-devcontainer cacheFrom: ghcr.io/vehagn/homelab-devcontainer push: always