From bfba489065b2de2a7d37c590ca0977d1c6e6b208 Mon Sep 17 00:00:00 2001 From: Vitor Hideyoshi Date: Fri, 7 Nov 2025 17:52:52 -0300 Subject: [PATCH] feat: implements docker credentials and ci --- .github/workflows/deploy.yml | 12 +++++++++--- deploy.sh | 19 ++++++++++++++++++- 2 files changed, 27 insertions(+), 4 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index e488e17..47a8337 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -2,11 +2,11 @@ name: remote ssh command on: repository_dispatch: - types: [deploy-prod] + types: + - deploy push: branches: - main - - staging jobs: deploy: @@ -14,13 +14,19 @@ jobs: environment: ${{ github.ref_name == 'main' && 'prod' || 'staging' }} runs-on: ubuntu-latest timeout-minutes: 30 + env: + NAMESPACE: ${{ vars.NAMESPACE }} steps: - name: Set Kubernetes Context uses: azure/k8s-set-context@v1 with: method: kubeconfig - kubeconfig: ${{ secrets.KUBECONFIG }} + kubeconfig: ${{ secrets.PORTFOLIO_KUBECONFIG }} + + - name: Configures GHCR credentials + run: | + echo ${{ secrets.GHCR_TOKEN }} | docker login ghcr.io -u ${{ github.actor }} --password-stdin - name: Execute deploy run: | diff --git a/deploy.sh b/deploy.sh index f7d1edf..61dd5c3 100755 --- a/deploy.sh +++ b/deploy.sh @@ -1,6 +1,7 @@ #!/bin/bash +### deploy flux operator ### helm upgrade --install flux-operator oci://ghcr.io/controlplaneio-fluxcd/charts/flux-operator \ --namespace flux-system \ --create-namespace @@ -9,14 +10,30 @@ helm upgrade --install flux-operator oci://ghcr.io/controlplaneio-fluxcd/charts/ kubectl apply -f manifest/flux-instance.yml +### Additional components ### +# deploy descheduler kubectl apply -f manifest/charts/descheduler +# deploy ingress-nginx kubectl create namespace ingress-nginx \ --dry-run=client -o yaml | kubectl apply -f - kubectl apply -f manifest/charts/nginx +# deploy cert-manager kubectl create namespace cert-manager \ --dry-run=client -o yaml | kubectl apply -f - -kubectl apply -f manifest/charts/cert-manager \ No newline at end of file +kubectl apply -f manifest/charts/cert-manager + + +### configures docker registry secret ### +if [[ -f $HOME/.docker/config.json ]]; then + kubectl create secret generic regcred \ + --from-file=.dockerconfigjson=$HOME/.docker/config.json \ + --type=kubernetes.io/dockerconfigjson \ + --namespace=$NAMESPACE \ + --dry-run=client -o yaml | kubectl apply -f - +else + echo "Docker config file not found at $HOME/.docker/config.json. Skipping registry secret creation." +fi \ No newline at end of file