refactor again
This commit is contained in:
parent
d327b1649c
commit
7abfc2578d
1 changed files with 20 additions and 45 deletions
|
|
@ -17,55 +17,30 @@ jobs:
|
||||||
- name: Checkout code
|
- name: Checkout code
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Set image name and tags
|
- name: Login to Gitea Container Registry (internal)
|
||||||
id: meta
|
|
||||||
run: |
|
run: |
|
||||||
REPO_OWNER="${{ gitea.repository_owner }}"
|
echo "${{ secrets.REGISTRY_TOKEN }}" | docker login server:3000 -u "${{ gitea.actor }}" --password-stdin
|
||||||
REPO_NAME="lcc"
|
|
||||||
BRANCH_NAME="${{ gitea.ref_name }}"
|
|
||||||
SHA_SHORT="${{ gitea.sha }}"
|
|
||||||
SHA_SHORT=${SHA_SHORT:0:7}
|
|
||||||
|
|
||||||
IMAGE_BASE="git.avatic.de/${REPO_OWNER}/${REPO_NAME}"
|
|
||||||
|
|
||||||
# Basis-Tags
|
|
||||||
TAGS="${IMAGE_BASE}:${BRANCH_NAME}"
|
|
||||||
TAGS="${TAGS},${IMAGE_BASE}:${BRANCH_NAME}-${SHA_SHORT}"
|
|
||||||
|
|
||||||
# Latest tag nur für main branch
|
|
||||||
if [ "${{ gitea.ref_name }}" = "main" ]; then
|
|
||||||
TAGS="${TAGS},${IMAGE_BASE}:latest"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "tags=${TAGS}" >> $GITHUB_OUTPUT
|
|
||||||
echo "image_base=${IMAGE_BASE}" >> $GITHUB_OUTPUT
|
|
||||||
|
|
||||||
- name: Login to Gitea Container Registry
|
|
||||||
run: |
|
|
||||||
echo "${{ secrets.REGISTRY_TOKEN }}" | docker login git.avatic.de -u "${{ gitea.actor }}" --password-stdin
|
|
||||||
|
|
||||||
- name: Build Docker image
|
- name: Build Docker image
|
||||||
run: |
|
run: |
|
||||||
IFS=',' read -ra TAG_ARRAY <<< "${{ steps.meta.outputs.tags }}"
|
docker build -t server:3000/${{ gitea.repository_owner }}/lcc:${{ gitea.sha }} .
|
||||||
|
docker tag server:3000/${{ gitea.repository_owner }}/lcc:${{ gitea.sha }} server:3000/${{ gitea.repository_owner }}/lcc:latest
|
||||||
# Build mit dem ersten Tag
|
|
||||||
docker build -t "${TAG_ARRAY[0]}" .
|
|
||||||
|
|
||||||
# Füge weitere Tags hinzu
|
|
||||||
for tag in "${TAG_ARRAY[@]:1}"; do
|
|
||||||
docker tag "${TAG_ARRAY[0]}" "$tag"
|
|
||||||
done
|
|
||||||
|
|
||||||
- name: Push Docker images
|
- name: Push to internal registry
|
||||||
run: |
|
run: |
|
||||||
IFS=',' read -ra TAG_ARRAY <<< "${{ steps.meta.outputs.tags }}"
|
docker push server:3000/${{ gitea.repository_owner }}/lcc:${{ gitea.sha }}
|
||||||
|
docker push server:3000/${{ gitea.repository_owner }}/lcc:latest
|
||||||
# Push alle Tags
|
|
||||||
for tag in "${TAG_ARRAY[@]}"; do
|
|
||||||
echo "Pushing $tag"
|
|
||||||
docker push "$tag"
|
|
||||||
done
|
|
||||||
|
|
||||||
- name: Logout from registry
|
- name: Tag for external registry
|
||||||
if: always()
|
run: |
|
||||||
run: docker logout git.avatic.de
|
docker tag server:3000/${{ gitea.repository_owner }}/lcc:latest git.avatic.de/${{ gitea.repository_owner }}/lcc:latest
|
||||||
|
docker tag server:3000/${{ gitea.repository_owner }}/lcc:${{ gitea.sha }} git.avatic.de/${{ gitea.repository_owner }}/lcc:${{ gitea.sha }}
|
||||||
|
|
||||||
|
- name: Login to external registry
|
||||||
|
run: |
|
||||||
|
echo "${{ secrets.REGISTRY_TOKEN }}" | docker login git.avatic.de -u "${{ gitea.actor }}" --password-stdin
|
||||||
|
|
||||||
|
- name: Push to external registry
|
||||||
|
run: |
|
||||||
|
docker push git.avatic.de/${{ gitea.repository_owner }}/lcc:latest
|
||||||
|
docker push git.avatic.de/${{ gitea.repository_owner }}/lcc:${{ gitea.sha }}
|
||||||
Loading…
Add table
Reference in a new issue