on: push: branches: - 'main' jobs: non-lab: runs-on: docker #container: # image: ghcr.io/opentofu/opentofu:1.7.2 steps: - uses: actions/checkout@v4 with: sparse-checkout: | non-lab #- uses: https://code.lab.cowley.tech/homelab/forgejo-opentofu-runner@main - name: Setup OpenTofu run: | curl -fsSl https://get.opentofu.org/install-opentofu.sh -o /tmp/install-opentofu.sh chmod +x /tmp/install-opentofu.sh /tmp/install-opentofu.sh --install-method deb rm -f /tmp/install-opentofu.sh - name: Tofu init working-directory: ${{ github.workspace }}/non-lab run: | export KUBE_CONFIG_PATH="/tmp/kubeconfig" echo ${{ secrets.KUBE_CONFIG_BASE64 }} | base64 -d > ${KUBE_CONFIG_PATH} export B2_APPLICATION_KEY_ID=${{ secrets.B2_APPLICATION_KEY_ID }} export B2_APPLICATION_KEY=${{ secrets.B2_APPLICATION_KEY }} tofu init - name: Tofu Plan working-directory: ${{ github.workspace }}/non-lab run: | export KUBE_CONFIG_PATH="/tmp/kubeconfig" echo ${{ secrets.KUBE_CONFIG_BASE64 }} | base64 -d > ${KUBE_CONFIG_PATH} export B2_APPLICATION_KEY_ID=${{ secrets.B2_APPLICATION_KEY_ID }} export B2_APPLICATION_KEY=${{ secrets.B2_APPLICATION_KEY }} tofu plan -out tfplan #- uses: https://code.forgejo.org/forgejo/upload-artifact@v4 # with: # name: plan # path: ${{ github.workspace }}/non-lab/tfplan - name: Tofu Apply working-directory: ${{ github.workspace }}/non-lab run: | export KUBE_CONFIG_PATH="/tmp/kubeconfig" echo ${{ secrets.KUBE_CONFIG_BASE64 }} | base64 -d > ${KUBE_CONFIG_PATH} export B2_APPLICATION_KEY_ID=${{ secrets.B2_APPLICATION_KEY_ID }} export B2_APPLICATION_KEY=${{ secrets.B2_APPLICATION_KEY }} ls -la