mirror of
https://github.com/RSS-Bridge/rss-bridge.git
synced 2024-12-18 08:54:20 +03:00
35 lines
1 KiB
Text
35 lines
1 KiB
Text
|
#!/bin/bash
|
||
|
|
||
|
# Use manifest-tool to create the manifest, given the experimental
|
||
|
# "docker manifest" command isn't available yet on Docker Hub.
|
||
|
MANIFEST_TOOL_VERSION=$(curl -s https://api.github.com/repos/estesp/manifest-tool/releases/latest | grep 'tag_name' | cut -d\" -f4)
|
||
|
curl -Lo manifest-tool https://github.com/estesp/manifest-tool/releases/download/$MANIFEST_TOOL_VERSION/manifest-tool-linux-amd64
|
||
|
chmod +x manifest-tool
|
||
|
|
||
|
# Generate the manifest file.
|
||
|
# Parameter 1 is the multi-arch image name, e.g. rss-bridge/rss-bridge:stable
|
||
|
function generate_manifest {
|
||
|
cat > manifest-generated.yaml << EOF
|
||
|
image: $1
|
||
|
manifests:
|
||
|
- image: $1-amd64
|
||
|
platform:
|
||
|
architecture: amd64
|
||
|
os: linux
|
||
|
- image: $1-arm32v7
|
||
|
platform:
|
||
|
architecture: arm
|
||
|
os: linux
|
||
|
variant: v7
|
||
|
- image: $1-arm64v8
|
||
|
platform:
|
||
|
architecture: arm64
|
||
|
os: linux
|
||
|
variant: v8
|
||
|
EOF
|
||
|
}
|
||
|
|
||
|
echo "Pushing multi-arch manifest $IMAGE_NAME"
|
||
|
generate_manifest $IMAGE_NAME
|
||
|
./manifest-tool push from-spec manifest-generated.yaml
|