Automate CircleCI Integration Tasks from PowerShell
The CData API Driver for ADO.NET is a standard ADO.NET Provider that make it easy to accomplish data cleansing, normalization, backup, and other integration tasks by enabling real-time access to CircleCI.
ADO.NET Provider
The ADO.NET Provider provides a SQL interface for CircleCI; this tutorial shows how to use the Provider to retrieve CircleCI data.
Once you have acquired the necessary connection properties, accessing CircleCI data in PowerShell can be enabled in three steps.
Using API Key Authentication
CircleCI uses personal API tokens to authenticate API requests. To generate a personal API token, log in to your CircleCI account, navigate to User Settings > Personal API Tokens, and click Create New Token. Copy the token value immediately as it is only shown once.
After setting the following connection properties, you are ready to connect:
- AuthScheme: Set this to APIKey.
- APIKey: Set this to your CircleCI personal API token.
Example connection string:
Profile=C:\profiles\CircleCI.apip;AuthScheme=APIKey;ProfileSettings='APIKey=your_personal_api_token';
-
Load the provider's assembly:
[Reflection.Assembly]::LoadFile("C:\Program Files\CData\CData API Driver for ADO.NET\lib\System.Data.CData.API.dll") -
Connect to CircleCI:
$conn= New-Object System.Data.CData.API.APIConnection("Profile=C:\profiles\CircleCI.apip;AuthScheme=APIKey;ProfileSettings='APIKey=your_personal_api_token';") $conn.Open() -
Instantiate the APIDataAdapter, execute an SQL query, and output the results:
$sql="SELECT , from Artifacts" $da= New-Object System.Data.CData.API.APIDataAdapter($sql, $conn) $dt= New-Object System.Data.DataTable $da.Fill($dt) $dt.Rows | foreach { Write-Host $_. $_. }