TeamCity Plugin
The TeamCity Plugin integrates TeamCity with Akeyless so your builds can retrieve secrets directly from the Akeyless API without storing sensitive values in TeamCity.
If you are deciding between TeamCity integration paths:
- TeamCity Plugin: Native Akeyless TeamCity plugin that connects directly to the Akeyless API.
- TeamCity Plugin by way of HashiCorp Vault Proxy: HashiCorp Vault-compatible integration path through the Akeyless HashiCorp Vault Proxy.
Use the native plugin for new implementations.
Use the HashiCorp Vault Proxy plugin path if you need compatibility with existing Vault-based TeamCity workflows.
JetBrains Marketplace: Akeyless Secrets Management
Repository: akeyless-community/teamcity-akeyless-plugin
Features
- Native TeamCity integration for Akeyless secrets retrieval
- Support for static, dynamic, and rotated secrets
- Per-build token flow
- Sensitive value masking in TeamCity logs
- Input validation for API URL and secret path
Prerequisites
- TeamCity Server 2024.12 or later.
- Akeyless authentication method with permissions to read the target secrets.
- Network connectivity from TeamCity Server to your Akeyless API endpoint.
Install the Plugin
Install from TeamCity Marketplace
Marketplace page: Akeyless Secrets Management
- In TeamCity, go to Administration > Plugins.
- Select Browse plugins repository.
- Search for
Akeyless Secrets Management. - Install the plugin and restart TeamCity Server.
Install from ZIP
- Build or download the plugin ZIP.
- In TeamCity, go to Administration > Plugins.
- Select Upload plugin zip.
- Upload the ZIP file and restart TeamCity Server.
Configure a TeamCity Connection
- Open your TeamCity project.
- Go to Connections.
- Select Add Connection.
- Choose Akeyless Secrets Management.
- Configure the connection values:
- Display Name: Friendly name for the TeamCity connection.
- API URL: Akeyless API endpoint (default:
https://api.akeyless.io). - Access ID: Akeyless Access ID.
- Authentication Method: Select one of the supported methods.
- Credentials: Provide fields required by the selected method.
Supported Authentication Methods
- Access Key
- Kubernetes
- AWS IAM
- Azure AD
- GCP
- Certificate (Certificate Data or Certificate File Path)
Use Secrets in Build Parameters
Use the akeyless: prefix for remote secret parameters.
The same parameter structure is used for static, dynamic, and rotated secrets.
Example:
akeyless:/production/database-passwordKotlin DSL example:
params {
param("env.DATABASE_PASSWORD", "akeyless:/production/database-password")
param("env.API_KEY", "akeyless:/production/api-key")
}Troubleshooting
Authentication fails
- Verify
Access IDand credential values. - Verify the authentication method is configured in Akeyless and has the required role permissions.
- Verify the API URL is reachable from TeamCity Server.
Secret resolution fails
- Verify the secret path is correct and starts with
/. - Verify the connection identity has access to the target secret.
- Review TeamCity Server logs for plugin-side errors.
API URL validation errors
- Use a valid API host URL.
- Use
httpsfor production endpoints. - If testing with localhost, use
http://localhost.
Updated about 1 hour ago
