❗ We only support Feature Experimentation (For now) |
---|
This repository contains a custom GitHub Action designed to create and manage your AB Tasty resources for feature experimentation and web experimentation products such as projects, campaigns, teams, etc... You can use these commands to perform common AB Tasty platform actions from your terminal or through scripts and other automation.
Our Github Action is built on top of our CLI, enabling you to use resource loader to batch your processes.
For example, you can use the AB Tasty Action to manage :
Feature experimentation: Projects, campaigns, flags, targeting keys, goals, etc...
- Feature Experimentation:
- Login & authenticate
- List resources: project, campaign, variation group, variation, targeting key, goal
- Load resource
Make sure you have the following set up before using this action:
- A GitHub repository
- Necessary permissions or secrets added to your repository
Add the following to your workflow YAML file (e.g.,
.github/workflows/your-workflow.yml
):
name: Load resource to Feature experimentation workflow
on:
push:
branches:
- main
jobs:
load-resources:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Run Your Action
uses: flagship-io/abtasty-action@v0.2.1
with:
fe-login-auth: |
commandId: c1
username: configuration-name
client-id: ${{secrets.CLIENT_ID}}
client-secret: ${{secrets.CLIENT_SECRET}}
account-id: ${{secrets.ACCOUNT_ID}}
account-environment-id: ${{secrets.ACCOUNT_ENVIRONMENT_ID}}
fe-load-resource: |
commandId: c2
file: resource-loader-templates/file-example.json
input-params-file: resource-loader-templates/input-params-file-example.json
output-format: json
Input Name | Required | Default Value | Description |
---|---|---|---|
fe-login-auth |
Yes | N/A |
Feature experimentation: Login & authenticate |
fe-load-resource |
No | N/A |
Feature experimentation: Load resources from your file |
fe-list-flag |
No | N/A |
Feature experimentation: List flags |
fe-list-campaign |
No | N/A |
Feature experimentation: List campaigns |
fe-list-project |
No | N/A |
Feature experimentation: List projects |
fe-list-goal: |
No | N/A |
Feature experimentation: List goals |
fe-list-tk |
No | N/A |
Feature experimentation: List targeting keys |
fe-list-vg |
No | N/A |
Feature experimentation: List variation groups |
fe-list-variation |
No | N/A |
Feature experimentation: List variations |
Output Name | Description |
---|---|
commandsResult |
Result of CLI flow |
If your action requires secrets, add them to your repository under Settings > Secrets and variables > Actions.
Secret Name | Description |
---|---|
CLIENT_ID |
Client ID |
CLIENT_SECRET |
Client Secret |
ACCOUNT_ID |
Account ID |
ACCOUNT_ENVIRONMENT_ID |
Account environment ID |
steps:
- name: List Project
uses: flagship-io/abtasty-action@v0.2.1
with:
fe-login-auth: |
commandId: c1
username: configuration-name
client-id: ${{secrets.CLIENT_ID}}
client-secret: ${{secrets.CLIENT_SECRET}}
account-id: ${{secrets.ACCOUNT_ID}}
account-environment-id: ${{secrets.ACCOUNT_ENVIRONMENT_ID}}
fe-list-project: |
commandId: c2
steps:
- name: Load resources
uses: flagship-io/abtasty-action@v0.2.1
with:
fe-login-auth: |
commandId: c1
username: configuration-name
client-id: ${{secrets.CLIENT_ID}}
client-secret: ${{secrets.CLIENT_SECRET}}
account-id: ${{secrets.ACCOUNT_ID}}
account-environment-id: ${{secrets.ACCOUNT_ENVIRONMENT_ID}}
fe-load-resource: |
commandId: c2
file: resource-loader-templates/file-example.json
input-params-file: resource-loader-templates/input-params-file-example.json
output-format: json
- Clone this repository:
git clone https://github.com/flagship-io/abtasty-action.git
- Make your changes and commit them.
- Test the action locally using act or a similar tool.
If your action uses a compiled language or requires packaging:
npm install && npm run build
If you set up act:
make act
Contributions are welcome! Please follow these steps:
- Fork the repository.
- Create a new branch for your feature or bugfix.
- Submit a pull request.
This project is licensed under the MIT License.
For questions or support, open an issue or contact flagship@abtasty.com.