name: Build neovim image run-name: Build Neovim image yay on: push: branches: [ "main" ] schedule: - cron: '30 3 */10 * *' jobs: build-neovim-arm64: runs-on: linux_arm64 steps: - name: install actions deps run: | dnf install -y nodejs git - name: Check out repository code uses: actions/checkout@v3 - run: | podman build . --file Dockerfile --tag gitea.maciej.cloud/packages/neovim:arm64 - name: login to registry run: | podman login -u "${{ secrets.PACKAGES_USERNAME }}" -p "${{ secrets.PACKAGES_PASSWD }}" gitea.maciej.cloud - name: Push image run: | IMAGE_NAME="neovim" IMAGE_ID="gitea.maciej.cloud/packages/$IMAGE_NAME" podman pull $IMAGE_ID:arm64-v1 podman pull $IMAGE_ID:arm64-v2 podman tag $IMAGE_ID:arm64-v2 $IMAGE_ID:arm64-v3 podman tag $IMAGE_ID:arm64-v1 $IMAGE_ID:arm64-v2 podman tag $IMAGE_ID:arm64 $IMAGE_ID:arm64-v1 podman push $IMAGE_ID:arm64-v1 podman push $IMAGE_ID:arm64-v2 podman push $IMAGE_ID:arm64-v3 build-neovim-amd64: runs-on: linux_amd64 steps: - name: install actions deps run: | dnf install -y nodejs git - name: Check out repository code uses: actions/checkout@v3 - run: | podman build . --file Dockerfile --tag gitea.maciej.cloud/packages/neovim:amd64 - name: login to registry run: | podman login -u "${{ secrets.PACKAGES_USERNAME }}" -p "${{ secrets.PACKAGES_PASSWD }}" gitea.maciej.cloud - name: Push image run: | IMAGE_NAME="neovim" IMAGE_ID="gitea.maciej.cloud/packages/$IMAGE_NAME" podman pull $IMAGE_ID:amd64-v1 podman pull $IMAGE_ID:amd64-v2 podman tag $IMAGE_ID:amd64-v2 $IMAGE_ID:amd64-v3 podman tag $IMAGE_ID:amd64-v1 $IMAGE_ID:amd64-v2 podman tag $IMAGE_ID:amd64 $IMAGE_ID:amd64-v1 podman push $IMAGE_ID:amd64-v1 podman push $IMAGE_ID:amd64-v2 podman push $IMAGE_ID:amd64-v3 update-images-manifest: runs-on: [ linux_amd64 ] needs: - build-neovim-arm64 - build-neovim-amd64 steps: - name: login to registry run: podman login -u "${{ secrets.PACKAGES_USERNAME }}" -p "${{ secrets.PACKAGES_PASSWD }}" gitea.maciej.cloud - name: Create manifest and push run: | echo "Updating manifest for neovim"; podman manifest create gitea.maciej.cloud/packages/neovim:latest gitea.maciej.cloud/packages/neovim:amd64-v1 gitea.maciej.cloud/packages/neovim:arm64-v1; podman manifest push gitea.maciej.cloud/packages/neovim:latest gitea.maciej.cloud/packages/neovim:latest;