diff --git a/.gitea/workflows/image.yaml b/.gitea/workflows/image.yaml new file mode 100644 index 0000000..42a50f3 --- /dev/null +++ b/.gitea/workflows/image.yaml @@ -0,0 +1,71 @@ +name: Release +on: [push] + +jobs: + release-image: + runs-on: imgbuilder + env: + CONTAINER_REGISTRY: gitea.konchin.com + GITEA_TAG: latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Set up QEMU + uses: docker/setup-qemu-action@v3 + + - name: Set up Docker BuildX + uses: docker/setup-buildx-action@v3 + with: + config-inline: | + debug = true + [registry."${{ env.CONTAINER_REGISTRY }}"] + ca = ["rootca.pem"] + + - name: Login + uses: docker/login-action@v3 + with: + registry: ${{ env.CONTAINER_REGISTRY }} + username: ${{ secrets.REGISTRY_USERNAME }} + password: ${{ secrets.REGISTRY_PASSWORD }} + + - name: Setup env + run: | + echo "GITEA_REPO=${GITHUB_REPOSITORY}" | tr '[:upper:]' '[:lower:]' >> $GITHUB_ENV + echo "GITEA_REF_NAME=${GITHUB_REF_NAME}" | tr '[:upper:]' '[:lower:]' >> $GITHUB_ENV + + - name: Build and push + uses: docker/build-push-action@v4 + with: + context: . + file: ./Dockerfile + platforms: | + linux/amd64 + push: true + tags: | + ${{ env.CONTAINER_REGISTRY }}/${{ env.GITEA_REPO }}:${{ env.GITEA_REF_NAME }} + ${{ env.CONTAINER_REGISTRY }}/${{ env.GITEA_REPO }}:${{ env.GITEA_TAG }} + deploy: + needs: release-image + runs-on: imgbuilder + container: + image: gitea.konchin.com/system/kubectl-image + credentials: + username: ${{ secrets.REGISTRY_USERNAME }} + password: ${{ secrets.REGISTRY_PASSWORD }} + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Setup kubeconfig + run: | + echo "${{ secrets.KUBE_CONFIG }}" > .kubeconfig + cat .kubeconfig + + - name: Deploy + run: | + kubectl --kubeconfig .kubeconfig apply -Rf k8s/ + + - name: Rollout restart + run: | + kubectl --kubeconfig .kubeconfig -n amane-tanikaze rollout restart deployment amane-frontend diff --git a/rootca.pem b/rootca.pem new file mode 100644 index 0000000..2f7ceaf --- /dev/null +++ b/rootca.pem @@ -0,0 +1,29 @@ +-----BEGIN CERTIFICATE----- +MIIFAjCCAuqgAwIBAgIUQGFtCLSyk55KvnESvDfNJqGWX4EwDQYJKoZIhvcNAQEL +BQAwGTEXMBUGA1UEAwwOS29uY2hpbi5jb20gQ0EwHhcNMjQwOTEzMTcyMzMyWhcN +MzQwOTExMTcyMzMyWjAZMRcwFQYDVQQDDA5Lb25jaGluLmNvbSBDQTCCAiIwDQYJ +KoZIhvcNAQEBBQADggIPADCCAgoCggIBAJDrd5hz7FZdNxGCUQt7gv+KDO/GRIbN +Lg31AD0AOY2CdSKUoHoDa6RRI0jZrZr7HqvDKXnfz4FAfydCFggVzLSY7dxhr571 +FcjezP1Y5Ft2ColAVbmUuftRf0mMV0pRgI+4evQTLIKJh35aw/ggarbhKn1Hf/6b +OoV05OmmHc1tUghOrafW7Qp2HSgdMRlyQPr+6j791aCEFSU19h7JKCOhcHbtGWDV +xsA0gWO+hGyiAhtvWYF1dgLZ7odKrV7gcm5r0+dDv8deBnfxZKaPDgGHT+ED4AeY +kRncWIhqILYNiD/xLwLAj3zeUi+REUiPcMaAGLxuriXmrUxRYeP4EaTxbjtLEKjI +OV3uOxOmHFpMHUqBC9IAuFdwdTEmPwvikSTgxfTjjcQr4Lq6maZqOynZK5Cfhxkw +slS1FhJw/wHe1z2kjykgV4Erp3oNOV5bdQYu1f4bz2R37sI4XEGRlPDVBr1KgCFB +jUcwCy/zFk4xdnayZD7MRMo3IOetDspuntkpOkwBrJTV9fJPhgikPUrFujMfojQs +aMttHLBFQN7ssDYVnw3FWJnpxD1eIbW1/2EG/18j/qpVi+N5QiFKoKLMiQcSltHi +Sg+BvEZXu6wlJI62LGzEwcdqv8b3XJJDObECI7NTj5RSW6EnLNKr9ryf/au9Aank +Y6/bjCB5peMvAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwICBDAPBgNVHRMBAf8EBTAD +AQH/MB0GA1UdDgQWBBRkNAxKfd3zytl/MIxhaPUIlfsolzANBgkqhkiG9w0BAQsF +AAOCAgEAD/S2hQok24RAsbu6FVIC1j9C+I+l9aQKljcLmdO8vCE4umSAPWiGXzro +HKGiR5rfghg4G0k5x8y3FDv475l4YodbZ1QGOZMWicLl9lA9KjO5BE/5FGZG6gCO +fHp1um/CdfoSsIRnzXQ46Alt/jo1il5flv3vnA3C4Zy+YmQ3EsOea+pezz31/a8I +XFDhjGZN4+viIE04EmcpQWGa46zeOkcweN23m92jnPN+Yi85Z+YnPXssyJTZKgvz +eA3Ww5wlGArph+w8qNOJAo/wibDElwks80/p744IhW0nNfRkPj3erphmGHnlcAjL +EMl3X9zglLjtV27WXXYhHp8luilcBsdZWOGN+OUX3uP+rcOowP93wW9yBiD68rF3 +0oG9zq0WLWOfPDSmM6mHDjI3Hwmx+VEL9cNMlm3h9UOQtJKnbUxbrrTkUzv4y9zE +fgOUvICOWRvdz0HnF5Dg4XyGQhMq+cqj0fD18Fl/KKTtU5CUXI66fmdNFdjePPcm +/FUI+7DFjum+WWOTdlJsYIPiH0MTDWrAdduzcEuQHo4Z9+FimgPBpyBQIhivF2WO +ACzQLzK++utdy7fp92WV1hyF14DTyVC/KwvF3vI0BycLXBoYhwubIRb5fCQxDm7q +UxhDKxf83XaYEu0LjfORZodfM4dQDdwsX4wHlHsLLdRWni6SwGw= +-----END CERTIFICATE-----