7272 cacheFrom : ghcr.io/pnstack/codespace/${{ matrix.dir }}:latest
7373 imageTag : ${{ github.ref == 'refs/heads/main' && 'latest' || steps.meta.outputs.tags }}
7474 platform : ${{ matrix.platform }}
75- push : always
75+ push : always
76+
77+ list-dir-arm :
78+ runs-on : ubuntu-latest
79+ outputs :
80+ dir : ${{ steps.list-dir.outputs.dir }}
81+ steps :
82+ - name : Checkout
83+ uses : actions/checkout@v4
84+
85+ - name : List Dir
86+ id : list-dir
87+ uses : pnstack/actions/list-dir@main
88+ with :
89+ dir : templates-arm
90+
91+ - name : log
92+ run : echo ${{ steps.list-dir.outputs.dir }}
93+
94+ build-arm :
95+ runs-on : ubuntu-latest
96+ needs : [list-dir-arm]
97+ strategy :
98+ fail-fast : false
99+ matrix :
100+ dir : ${{fromJson(needs.list-dir.outputs.dir)}}
101+ steps :
102+ - name : Checkout
103+ uses : actions/checkout@v4
104+
105+ - name : Set up QEMU
106+ uses : docker/setup-qemu-action@v3
107+
108+ - name : Set up Docker Buildx
109+ uses : docker/setup-buildx-action@v3
110+ with :
111+ use : true
112+
113+ - name : Log in to the Container registry
114+ 115+ with :
116+ registry : ${{ env.REGISTRY }}
117+ username : ${{ github.actor }}
118+ password : ${{ secrets.GITHUB_TOKEN }}
119+
120+ - name : Extract metadata (tags, labels) for Docker
121+ id : meta
122+ uses : docker/metadata-action@v5
123+ with :
124+ images : ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
125+
126+ - name : Build and run Dev Container task
127+ uses :
devcontainers/[email protected] 128+ with :
129+ subFolder : ./templates-arm/${{ matrix.dir }}
130+ imageName : ghcr.io/pnstack/codespace/${{ matrix.dir }}-arm
131+ cacheFrom : ghcr.io/pnstack/codespace/${{ matrix.dir }}:latest
132+ imageTag : ${{ github.ref == 'refs/heads/main' && 'latest' || steps.meta.outputs.tags }}
133+ platform : linux/arm64
134+ push : always
0 commit comments