{"id":21660015,"url":"https://github.com/flipt-io/setup-action","last_synced_at":"2026-02-12T05:11:08.200Z","repository":{"id":215331002,"uuid":"738271665","full_name":"flipt-io/setup-action","owner":"flipt-io","description":"Install Flipt CLI in your GitHub Workflows","archived":false,"fork":false,"pushed_at":"2025-06-09T13:24:09.000Z","size":3427,"stargazers_count":1,"open_issues_count":6,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-06-09T14:28:36.133Z","etag":null,"topics":["cd","ci","continuous-deployment","continuous-integration","feature-flags"],"latest_commit_sha":null,"homepage":"https://github.com/marketplace/actions/flipt-setup-action","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/flipt-io.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-01-02T20:58:43.000Z","updated_at":"2025-06-09T13:24:01.000Z","dependencies_parsed_at":"2025-02-13T15:25:44.318Z","dependency_job_id":"c3dc00de-153a-4b3b-a0e0-2f8b96a20306","html_url":"https://github.com/flipt-io/setup-action","commit_stats":null,"previous_names":["flipt-io/setup-action"],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/flipt-io/setup-action","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flipt-io%2Fsetup-action","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flipt-io%2Fsetup-action/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flipt-io%2Fsetup-action/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flipt-io%2Fsetup-action/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flipt-io","download_url":"https://codeload.github.com/flipt-io/setup-action/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flipt-io%2Fsetup-action/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265678448,"owners_count":23810114,"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":["cd","ci","continuous-deployment","continuous-integration","feature-flags"],"created_at":"2024-11-25T09:32:03.189Z","updated_at":"2026-02-12T05:11:08.191Z","avatar_url":"https://github.com/flipt-io.png","language":"TypeScript","readme":"# Flipt Setup Action\n\n![GitHub Release](https://img.shields.io/github/v/release/flipt-io/setup-action)\n\nThis action installs [Flipt](https://flipt.io) in your GitHub Actions workflow, supporting both Flipt v1 and v2.\n\nYou can pass additional arguments to the `flipt` command using the `args` input. If no arguments are provided, `flipt` will be installed and run with the `--help` flag.\n\nBoth Flipt v1 and v2 CLI commands can be run using this action. The version you install determines which commands are available.\n\n## Supported Platforms\n\n- Linux x86_64\n- Linux arm64\n- MacOS x86_64\n- MacOS arm64\n\n## Version Selection\n\nThis action supports both Flipt v1 and v2. Choose your version based on your needs:\n\n- **Flipt v1**: Traditional database-backed feature flag management\n  - Docs: \u003chttps://docs.flipt.io/\u003e\n- **Flipt v2**: Git-native feature flag management with declarative APIs\n  - Docs: \u003chttps://docs.flipt.io/v2\u003e\n\n### Version Resolution\n\nThe `version` input supports several patterns:\n\n| Pattern     | Description                                             | Example             |\n| ----------- | ------------------------------------------------------- | ------------------- |\n| `latest`    | Latest v1 release (default, for backward compatibility) | `latest`            |\n| `v1`        | Latest v1 release                                       | `v1`                |\n| `latest-v1` | Latest v1 release (explicit)                            | `latest-v1`         |\n| `v2`        | Latest v2 release                                       | `v2`                |\n| `latest-v2` | Latest v2 release (explicit)                            | `latest-v2`         |\n| `vX.Y.Z`    | Specific version                                        | `v1.47.0`, `v2.0.0` |\n\n**Examples:**\n\n```yaml\n# Use latest v1 (backward compatible default)\nversion: latest\n\n# Use latest v1 (explicit)\nversion: v1\n\n# Use latest v2\nversion: v2\n\n# Use specific versions\nversion: v1.47.0\nversion: v2.0.0\n```\n\n## Examples for Flipt v1\n\n### Validate (v1)\n\nDocs: \u003chttps://www.flipt.io/docs/cli/commands/validate\u003e\n\nThis example installs Flipt v1 and runs `flipt validate` against the repository root.\n\n```yaml\nvalidate:\n  runs-on: ubuntu-latest\n  steps:\n    - uses: actions/checkout@v3\n\n    - uses: flipt-io/setup-action@v0.5.0\n      with:\n        GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # required to download flipt cli without rate limiting\n        version: v1 # Use latest v1 release\n        # Optional, additional arguments to pass to the `flipt` command\n        # args:\n        # Optional, the directory to run Flipt against, defaults to the repository root\n        # working-directory:\n\n    - run: flipt validate\n```\n\n### OCI Bundle and Push (v1)\n\nDocs: \u003chttps://www.flipt.io/docs/cli/commands/bundle/build\u003e\n\nThis example installs Flipt v1 and runs `flipt bundle build` against the repository root. It then pushes the bundle to a registry with `flipt bundle push`, allowing you to store and share your feature flag data as an OCI artifact.\n\n```yaml\nbundle:\n  runs-on: ubuntu-latest\n  steps:\n    - uses: actions/checkout@v3\n\n    - uses: flipt-io/setup-action@v0.5.0\n      with:\n        GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # required to download flipt cli without rate limiting\n        version: v1 # Use latest v1 release\n        # Optional, additional arguments to pass to the `flipt` command\n        # args:\n        # Optional, the directory to run Flipt against, defaults to the repository root\n        # working-directory:\n\n    - name: Get UUID\n      id: uuid\n      run: |\n        echo \"uuid=$(uuidgen)\" \u003e\u003e $GITHUB_OUTPUT\n\n    # Build the bundle and push it to an ephemeral registry (available for 1 hour)\n    - name: Build and Push bundle\n      run: |\n        flipt bundle build -t ttl.sh/${{ steps.uuid.outputs.uuid }}:1h\n        flipt bundle push ttl.sh/${{ steps.uuid.outputs.uuid }}:1h\n```\n\n### Import/Export (v1)\n\nDocs: \u003chttps://www.flipt.io/docs/operations/import-export\u003e\n\nExample of importing and exporting feature flag data:\n\n```yaml\nimport-export:\n  runs-on: ubuntu-latest\n  steps:\n    - uses: actions/checkout@v3\n\n    - uses: flipt-io/setup-action@v0.5.0\n      with:\n        GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}\n        version: v1\n\n    # Export flags from a running Flipt instance\n    - name: Export flags\n      run: flipt export --address http://flipt.my.org \u003e flags.yaml\n\n    # Import flags to another instance\n    - name: Import flags\n      run: flipt import --address http://flipt-staging.my.org \u003c flags.yaml\n```\n\n## Examples for Flipt v2\n\n### Validate (v2)\n\nDocs: \u003chttps://docs.flipt.io/v2/cli/overview\u003e\n\nFlipt v2 uses the same `validate` command but works with Git-native storage. Note that v2 does not support bundle or import/export operations - flags are managed directly through Git.\n\n```yaml\nvalidate-v2:\n  runs-on: ubuntu-latest\n  steps:\n    - uses: actions/checkout@v3\n\n    - uses: flipt-io/setup-action@v0.5.0\n      with:\n        GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}\n        version: v2 # Use latest v2 release\n        # Optional, the directory to run Flipt against, defaults to the repository root\n        # working-directory:\n\n    - run: flipt validate\n```\n\n### Working with Git Storage (v2)\n\nFlipt v2 is Git-native and can work directly with your repository:\n\n```yaml\ngit-workflow-v2:\n  runs-on: ubuntu-latest\n  steps:\n    - uses: actions/checkout@v3\n\n    - uses: flipt-io/setup-action@v0.5.0\n      with:\n        GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}\n        version: v2.0.0 # Use specific v2 version\n\n    # Validate flag configurations in your Git repository\n    - name: Validate flags\n      run: flipt validate\n```\n\n## Key Differences Between v1 and v2\n\n### Flipt v1\n\n- Database-backed storage (PostgreSQL, MySQL, SQLite)\n- Traditional client-server architecture\n- Bundle, Import/Export commands for data migration\n- Suitable for centralized flag management\n- CLI Docs: \u003chttps://www.flipt.io/docs/cli/overview\u003e\n\n### Flipt v2\n\n- Git-native storage (flags stored in Git repositories)\n- Declarative API approach\n- Multi-environment support\n- Direct Git integration for flag management\n- No bundle/import/export operations (uses Git directly)\n- CLI Docs: \u003chttps://docs.flipt.io/v2/cli/overview\u003e\n\nFor more detailed information:\n\n- [Flipt v1 Documentation](https://docs.flipt.io/)\n- [Flipt v2 Documentation](https://docs.flipt.io/v2)\n- [v2 Introduction and Differences](https://docs.flipt.io/v2/introduction)\n\n## Customizing\n\n### inputs\n\nThe following inputs can be used as `step.with` keys\n\n| Name                | Type   | Description                                                                         |\n| ------------------- | ------ | ----------------------------------------------------------------------------------- |\n| `working-directory` | string | **Optional**. The directory to validate, defaults to the repository root            |\n| `version`           | string | **Optional**. The version of Flipt to install, defaults to the latest (v1) release. |\n| `args`              | string | **Optional**. Additional arguments to pass to the `flipt` command                   |\n| `GITHUB_TOKEN`      | string | **Required**. The GitHub token to use to download Flipt CLI without rate limiting.  |\n\n## Development\n\n```console\n# Builds the TypeScript code.\nnpm run build\n\n# Runs eslint.\nnpm run lint\n\n# Runs prettier.\nnpm run format\n\n# Packages the code into the dist folder. Must be updated to pass CI on `main`.\nnpm run package\n\n# Runs all of the above commands.\nnpm run all\n```\n\n## License\n\n[Apache 2.0](LICENSE)\n","funding_links":[],"categories":["TypeScript"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflipt-io%2Fsetup-action","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fflipt-io%2Fsetup-action","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflipt-io%2Fsetup-action/lists"}