{"id":21262841,"url":"https://github.com/stackql/stackql-deploy-action","last_synced_at":"2026-01-02T16:33:21.438Z","repository":{"id":252426275,"uuid":"840184024","full_name":"stackql/stackql-deploy-action","owner":"stackql","description":"Runs stackql-deploy in your GitHub Actions workflow.","archived":false,"fork":false,"pushed_at":"2024-11-19T03:54:17.000Z","size":16,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-21T22:43:07.047Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/stackql.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-08-09T06:33:53.000Z","updated_at":"2024-11-21T07:25:10.000Z","dependencies_parsed_at":"2024-08-09T18:22:53.367Z","dependency_job_id":"22542779-6a27-4ce5-8a36-372d29ac191b","html_url":"https://github.com/stackql/stackql-deploy-action","commit_stats":null,"previous_names":["stackql/stackql-deploy-action"],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stackql%2Fstackql-deploy-action","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stackql%2Fstackql-deploy-action/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stackql%2Fstackql-deploy-action/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stackql%2Fstackql-deploy-action/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/stackql","download_url":"https://codeload.github.com/stackql/stackql-deploy-action/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243701314,"owners_count":20333616,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-21T04:59:30.506Z","updated_at":"2026-01-02T16:33:21.431Z","avatar_url":"https://github.com/stackql.png","language":null,"readme":"[![StackQL Deploy Actions Test](https://github.com/stackql/stackql-deploy-action/actions/workflows/stackql-deploy-actions-test.yml/badge.svg)](https://github.com/stackql/stackql-deploy-action/actions/workflows/stackql-deploy-actions-test.yml)\r\n[![StackQL](https://stackql.io/img/stackql-logo-bold.png)](https://github.com/stackql/stackql)\r\n\r\n# stackql-deploy\r\nGithub Action to execute `stackql-deploy` to deploy or test a stack.  [`stackql-deploy`](https://github.com/stackql/stackql-deploy) is a declarative, state-file-less IaC framework, based upon [`stackql`](https://github.com/stackql/stackql) queries.\r\n\r\n# Usage\r\n\r\n## Provider Authentication\r\nAuthentication to StackQL providers is done via environment variables source from GitHub Actions Secrets.  To learn more about authentication, see the setup instructions for your provider or providers at the [StackQL Provider Registry Docs](https://stackql.io/registry).  \r\n\r\n## Inputs\r\n- **`command`** - stackql-deploy command to run (__`build`__ or __`test`__)\r\n- **`stack_dir`** - repo directory containing `stackql_manifest.yml` and `resources` dir\r\n- **`stack_env`** - environment to deploy or test (e.g., `dev`, `prod`)\r\n- **`env_vars`** - (optional) environment variables or secrets imported into a stack (format: __`KEY=value,KEY2=value2`__)\r\n- **`env_file`** - (optional) environment variables sourced from a file \r\n- **`show_queries`** - (optional) show queries run in the output logs\r\n- **`log_level`** - (optional) set the logging level (__`INFO`__ or __`DEBUG`__, defaults to __`INFO`__)\r\n- **`dry_run`** - (optional) perform a dry run of the operation\r\n- **`custom_registry`** - (optional) custom registry URL to be used for stackql\r\n- **`on_failure`** - (optional) action on failure (*not implemented yet*)\r\n- **`output_file`** - (optional) output file to capture deployment outputs (JSON format)\r\n\r\n## Outputs\r\n- **`deployment_outputs`** - JSON string containing all deployment outputs from stackql-deploy\r\n- **`deployment_outputs_file`** - Path to the deployment outputs file\r\n\r\n## Examples\r\n\r\n### Deploy a stack\r\n\r\nthis example shows how to build a stack (`examples/k8s-the-hard-way`) for a `dev` environment:\r\n\r\n```yaml\r\n...\r\njobs:\r\n  stackql-actions-test:\r\n    name: StackQL Actions Test\r\n    runs-on: ubuntu-latest\r\n    env:\r\n      GOOGLE_CREDENTIALS: ${{ secrets.GOOGLE_CREDENTIALS }} # add additional cloud provider creds here as needed\r\n    \r\n    steps:\r\n      - name: Checkout\r\n        uses: actions/checkout@v4\r\n\r\n      - name: Deploy a Stack\r\n        uses: stackql/stackql-deploy-action@v1.0.2\r\n        with:\r\n          command: 'build'\r\n          stack_dir: 'examples/k8s-the-hard-way'\r\n          stack_env: 'dev'\r\n          env_vars: 'GOOGLE_PROJECT=stackql-k8s-the-hard-way-demo'\r\n```\r\n\r\n### Deploy a stack with outputs\r\n\r\nthis example shows how to deploy a stack and capture outputs for use in subsequent steps:\r\n\r\n```yaml\r\n...\r\njobs:\r\n  deploy:\r\n    name: StackQL Deploy with Outputs\r\n    runs-on: ubuntu-latest\r\n    env:\r\n      GOOGLE_CREDENTIALS: ${{ secrets.GOOGLE_CREDENTIALS }}\r\n    \r\n    steps:\r\n      - name: Checkout\r\n        uses: actions/checkout@v4\r\n\r\n      - name: Deploy a Stack\r\n        id: stackql-deploy\r\n        uses: stackql/stackql-deploy-action@v1.0.2\r\n        with:\r\n          command: 'build'\r\n          stack_dir: 'examples/k8s-the-hard-way'\r\n          stack_env: 'prod'\r\n          output_file: 'deployment-outputs.json'\r\n          env_vars: 'GOOGLE_PROJECT=stackql-k8s-the-hard-way-demo'\r\n\r\n      - name: Use deployment outputs\r\n        run: |\r\n          echo \"Deployment outputs: ${{ steps.stackql-deploy.outputs.deployment_outputs }}\"\r\n          \r\n          # Parse specific values from JSON output\r\n          WORKSPACE_NAME=$(echo '${{ steps.stackql-deploy.outputs.deployment_outputs }}' | jq -r '.databricks_workspace_name // \"N/A\"')\r\n          echo \"Workspace Name: $WORKSPACE_NAME\"\r\n          \r\n          # Add to GitHub Step Summary\r\n          echo \"## Deployment Results\" \u003e\u003e $GITHUB_STEP_SUMMARY\r\n          echo \"Workspace: $WORKSPACE_NAME\" \u003e\u003e $GITHUB_STEP_SUMMARY\r\n\r\n      - name: Conditional step based on outputs\r\n        if: contains(steps.stackql-deploy.outputs.deployment_outputs, 'RUNNING')\r\n        run: echo \"Workspace is running, proceeding with next steps...\"\r\n```\r\n\r\n### Test a stack\r\n\r\nthis example shows how to test stack for a given environment:\r\n\r\n```yaml\r\n...\r\n      - name: Test a Stack\r\n        uses: stackql/stackql-deploy-action@v1.0.2\r\n        with:\r\n          command: 'test'\r\n          stack_dir: 'examples/k8s-the-hard-way'\r\n          stack_env: 'sit'\r\n          env_vars: 'GOOGLE_PROJECT=stackql-k8s-the-hard-way-demo'\r\n```\r\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstackql%2Fstackql-deploy-action","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fstackql%2Fstackql-deploy-action","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstackql%2Fstackql-deploy-action/lists"}