{"id":28548200,"url":"https://github.com/qbraid/publish-environment-action","last_synced_at":"2025-07-02T15:31:25.428Z","repository":{"id":291988077,"uuid":"954786717","full_name":"qBraid/publish-environment-action","owner":"qBraid","description":"GitHub Action to create and request to publish a new environment on qBraid","archived":false,"fork":false,"pushed_at":"2025-05-21T15:26:29.000Z","size":61,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-06-10T01:09:06.597Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Python","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/qBraid.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,"zenodo":null}},"created_at":"2025-03-25T16:03:14.000Z","updated_at":"2025-05-19T12:07:11.000Z","dependencies_parsed_at":"2025-05-07T15:38:15.045Z","dependency_job_id":"2167bc20-acc1-4261-9ad1-497de6557e60","html_url":"https://github.com/qBraid/publish-environment-action","commit_stats":null,"previous_names":["qbraid/publish-environment-action"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/qBraid/publish-environment-action","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qBraid%2Fpublish-environment-action","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qBraid%2Fpublish-environment-action/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qBraid%2Fpublish-environment-action/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qBraid%2Fpublish-environment-action/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/qBraid","download_url":"https://codeload.github.com/qBraid/publish-environment-action/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qBraid%2Fpublish-environment-action/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263165768,"owners_count":23424006,"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":"2025-06-10T01:09:08.094Z","updated_at":"2025-07-02T15:31:25.417Z","avatar_url":"https://github.com/qBraid.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# \u003cimg src=\"icon.png\" height=60px align='center'\u003e qBraid Publish Environment Action\n\nGitHub Action to create and request to publish a new environment on qBraid.\n\n## Overview\n\nThis action automates the process of publishing Python environments to the qBraid platform. It takes a YAML configuration file and publishes the environment remotely to qBraid. The action requires a [qBraid API key](https://docs.qbraid.com/home/account#api-keys) to authenticate with the qBraid platform. The action can either be auto-triggered on release, manually triggered by the users, triggered via a push to the main branch, or other GitHub events.\n\n## Usage\n\n```yaml\nuses: qBraid/publish-environment-action@v1\nwith:\n  api-key: ${{ secrets.QBRAID_API_KEY }}\n  environment-file: '.qbraid.yaml'\n```\n\n## Inputs\n\n| Input | Description | Required | Default |\n|-------|-------------|----------|---------|\n| `api-key` | qBraid API key | Yes | - |\n| `environment-file` | Path to the YAML config file | No | `.qbraid.yaml` |\n| `wait-for-completion` | Wait for the environment to be published | No | `false` |\n| `persist-env` | Persist the environment in qBraid account after the workflow ends | No | `false` |\n\n## Example\n\n- Create a new workflow file `.github/workflows/qbraid-env.yml` \n- Add a secret to the repository with the name `QBRAID_API_KEY` and the value set to your [qBraid API key](https://docs.qbraid.com/home/account#api-keys). See [how to add a secret to a GitHub repository](https://docs.github.com/en/actions/security-for-github-actions/security-guides/using-secrets-in-github-actions#creating-secrets-for-a-repository).\n- Add the following content to the workflow file to trigger the action manually:\n\n```yaml\nname: Publish Environment on qBraid\non:\n  workflow_dispatch:\n\njobs:\n  publish_env:\n    runs-on: ubuntu-latest \n    steps:\n      - name: Publish Environment\n        uses: qBraid/publish-environment-action@v1\n        with:\n          api-key: ${{ secrets.QBRAID_API_KEY }}\n          environment-file: .qbraid.yaml\n          wait-for-completion: false\n          persist-env: false\n```\n\n- The above workflow will:\n  * Read the environment configuration from the `.qbraid.yaml` file. \n  * Immediately return after submitting the request to publish the environment.\n  * Remove the environment from the qBraid account after the workflow ends.\n\n- Add a file `.qbraid.yaml` to the root of your repository with the details of the environment. For example:\n\n```yaml\n# Sample qBraid environment configuration\nname: \"example-environment\"\ndescription: \"Environment for testing environment publish action.\"\ntags:\n  - \"qbraid\"\n  - \"environment\"\n\n# add path to the icon file in the repository (optional)\nicon: \"icon.png\"\n\npython_version: \"3.11.6\"\nkernel_name: \"Python 3 [name-of-kernel]\"\nshell_prompt: \"shell_prompt\"\n\npython_packages:\n  # add your package name and optional version\n  your_package: \"\"\n\n  # add any other python packages that may be useful\n  numpy: \"1.21.2\"\n  pandas: \"\u003e=1.3.3\"\n\n```\n- Add the icon file `icon.png`, which will be used as the environment icon in qBraid, to your repository and add the path to the icon file in the `.qbraid.yaml` file.\n- Commit the changes to the repository.\n- Navigate to the Actions tab in your repository and click on the `Publish Environment on qBraid` workflow. Click on the `Run workflow` button for running the action.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fqbraid%2Fpublish-environment-action","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fqbraid%2Fpublish-environment-action","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fqbraid%2Fpublish-environment-action/lists"}