CI/CD pipeline integration

In order to integrate Octomind into your CI/CD pipeline, you will need a GitHub Action and a GitHub App.

Octomind GitHub Flow

1. Create an API key

The option to create your API key can be found within the settings menu.

Settings menu button, 7/2024

Click on Create an API key.

Create an API key button

You then will be navigated to our auth provider where you can create a new org-level API key.

Create an API key

Copy the API key

You can only copy the API key once, so make sure to do that now. You should not share it with anyone.

Add the API key to your CI provider as a secret to run test reports from the CI.

2. Copy your test target Id

You can get your test target ID from the octomind landing page once signed-in. If you are greeted with the 'Setup your autonomous end-to-end tests' message, please sign-in first

The option to copy your test target ID can be found within the settings menu.

project settings, 08/2024

Click on the copy test target id.

Copy test target ID

3. Install GitHub App

Install our GitHub App. We will be commenting back the test results via the app.

Install the GitHub App from here https://github.com/apps/octomind-dev.

Octomind GitHub App install, screenshot 07/2023

4. Allow GitHub Comments

We’ll ask you to grant access to your repository to read metadata & read and write access to pull requests so we are allowed to comment back into pull requests. It will list the test results with additional links to more details, looking like this ↓

Example of Octomind test results in a pull request comment, screenshot 06/2023

Previous comments by octomind with test results will be collapsed by default. You can click to expand them.

Previous comments in PR are collapsed, screenshot 11/2023

We are very cautious about the permissions we need to protect your IP. We won’t need any other permissions.

We won’t be able to see your code.

5. Include the GitHub Action

Include the following GitHub Action into your CI/CD build pipeline on pull request.

- uses: OctoMind-dev/automagically-action-execute@v2
  with:
    url: <publicly accessible url to your deployment>
    token: ${{ secrets.AUTOMAGICALLY_TOKEN }}
    testTargetId: <your testTargetId that you also get from us>
    blocking: <if you want your pipeline to wait for all tests to pass>
    environmentName: <if you want to run tests on an environment other than default>

Please make sure to integrate the GibHub action AFTER your deployment step.

We assume you are running branch deployments so that every change can be tested in isolation. Please inject the publicly accessible url of your branch deployment, testTargetId and API key.