name: Oasis Auto Config Action description: Configure env for deploying apps using Oasis Automagically inputs: infisical-token: description: Infisical token for CI or Prod required: true deploy-env: description: Deploy Environment (ci or edge) required: true kubeconfig: description: Kubeconfig for Oasis required: false extra-secret-paths: description: Additional Secrets to fetch required: false extra-secret-envs: description: Additional Envs for secrets to fetch required: false garden-version: description: Version of Garden to deploy required: false oasis-branch: description: Branch of Oasis to use required: false default: master oasis-workspace: descipriont: Workspace to setup Oasis required: false runs: using: composite steps: - name: Configure Workflow shell: bash run: | if [ ${{ inputs.deploy-env }} == "edge" ]; then WORKFLOW_SECRET=/workflows/oasis-edge-deploy elif [ ${{ inputs.deploy-env }} == "ci" ]; then WORKFLOW_SECRET=/workflows/oasis-ci-deploy else echo "Error! deploy-env required, and must be 'ci' or 'edge'!" exit 1 fi # Save Envars echo OASIS_INFISICAL_TOKEN=${{ inputs.infisical-token }} >> $GITHUB_ENV echo OASIS_PATH_FETCH=$WORKFLOW_SECRET,${{ inputs.extra-secret-paths }} # /workflows/oasis--deploy, ...extra-secret-paths echo OASIS_ENV_FETCH=${{ inputs.deploy-env }},${{ inputs.extra-secret-envs }} #, ...extra-secret-envs - name: Setup Oasis Envars uses: https://gitea.dunemask.dev/elysium/elysium-actions@infisical-env with: infisical-token: ${{ env.OASIS_INFISICAL_TOKEN }} envs: ${{ env.OASIS_ENV_FETCH }} secret-paths: ${{ env.OASIS_PATH_FETCH }} - name: Configure Kubeconfig shell: bash run: | if [ -n ${{ inputs.kubeconfig }} && ${{ inputs.kubeconfig }} != "" ]; then echo "Using Provided Kubernetes Config" echo OASIS_WORKFLOW_KUBECONFIG=${{ inputs.kubeconfig }} >> $GITHUB_ENV elif [ ${{ inputs.deploy-env }} == "edge" ]; then echo "Using Edge Kubernetes Config" echo OASIS_WORKFLOW_KUBECONFIG=${{env.KUBERNETES_CONFIG_USW_EDGE}} >> $GITHUB_ENV elif [ ${{ inputs.deploy-env }} == "ci" ]; then echo "Using Dev Kubernetes Config" echo OASIS_WORKFLOW_KUBECONFIG=${{env.KUBERNETES_CONFIG_USW_DEV}} >> $GITHUB_ENV else echo "Error! deploy-env required, and must be 'ci' or 'edge'!" exit 1 fi - name: Oasis Setup uses: https://gitea.dunemask.dev/elysium/elysium-actions@oasis-setup-advanced with: garden-version: ${{ inputs.garden-version }} oasis-branch: ${{ inputs.oasis-branch }} oasis-workspace: ${{ inputs.oasis-workspace }} kubeconfig: ${{ env.OASIS_WORKFLOW_KUBECONFIG }}