Setting Up Source Control

What is Source Control?

Pandium enables easy management of the CI/CD of your integrations through a process labeled Source Control. Within the Pandium Integration Hub, you'll see a Source Control tab in the Settings sidebar resource where this process can be managed.

Source Control will be automatically deployed to your account, but requires further setup before beginning integration development. We currently support four different version control systems: Azure, Bitbucket, GitHub and GitLab.

Source Control looks for the URL paths in your repository denoted in your integration configuration and will build a new release based on changes in the code base.

Setting up this feature is key to hosting and managing integration on Pandium, and should be the first step completed before it begins. As integrations are created, you'll be able to build releases for them on that integration detail page, or directly from this page in the future.

Setting Up Source Control

  1. Navigate to the Source Control tab within the Settings resource on the sidebar.

  2. Connect to the preferred repository by hitting 'Connect' next to the repository name.

  3. Complete the authentication process for the relevant repository, and that's it!

If setting up an integration for the first time, Pandium is able to push an appropriate scaffolding of folders and files directly to your repository from that specific integration's detail page. Learn more about building that process and building releases here.

Note - the files Pandium will setup for you are:

  • A package file

  • A main file to print out environment

  • A lib file to parse Pandium specific environment

  • A default PANDIUM.yaml

  • Any additional files to get a minimally running script in that specific language

A release can be also be built manually from an integration's detail page, by selecting the 'Build Release' button on the page. This will start a build for a new release, which you can track the progress of, and view logs, in the Activity table on the Source Control page.

Note: If the integration you want to build a release for has already been created, it will populate in the dropdown below the connection options, and a new release can be named and built there.

Build Environment Secrets

Build Environment Secrets allow you to set key value pairs which you can reference as environment variables during the build of an integration release. A common use case is a token for an NPM registry:

These keys can then be referenced as environment variables in the format: PAN_SEC_SOURCE_CONTROL_YOUR_KEY_NAME - Note: all letters will be uppercase in the environment variable and any '-' will be converted to '_'.

ex: My-NPM-key will be PAN_SEC_SOURCE_CONTROL_MY_NPM_KEY.

These build environment secrets variables can later be referenced as environment variables in your code for use during the integration build process.

Example of use in a make file:

```makefile
GITTOKEN = ${PAN_SEC_SOURCE_CONTROL_GITHUB_TOKEN}
```

Example of use in a package.json:

"scripts": {
    "build": "tsc --broker-token=${PAN_SEC_SOURCE_CONTROL_MY_SECRET}"
  }

You can also make use of environment secrets directly in the PANDIUM.yaml:

build: npm config set @pandium:registry https://registry.qa-420.pandium.com/ && npm config set //registry.qa-420.pandium.com/:_authToken $PAN_SEC_SOURCE_CONTROL_PANDIUM_TOKEN npm install --production && npm i --save-dev @types/node && npm run build

Last updated