projen
Version:
CDK for software projects
52 lines • 5.2 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.PolarisGoCoverity = void 0;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const coverity_1 = require("./coverity");
const coverity_config_1 = require("./coverity-config");
const util_1 = require("../util");
/**
* A Coverity on Polaris configuration preset for Go projects.
*
* Provides sensible defaults for Go analysis:
* - `capture.languages.include` = `[go]`
* - `capture.buildCapture.buildCommand` = `go build .`
* - `capture.compilerConfiguration.covConfigure` = `[["--go"]]`
* - `capture.files.excludeRegex` excludes `vendor`, `bin` and other
* conventional Go build artifacts
*
* All defaults can be overridden via options. Nested options (e.g.
* `capture`) are deep-merged with the defaults, so overriding one nested
* field does not drop the other defaults in that subtree.
*
* @example
* new PolarisGoCoverity(project, {
* commit: {},
* });
*/
class PolarisGoCoverity extends coverity_1.PolarisCoverity {
static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.polaris.PolarisGoCoverity", version: "0.103.12" };
constructor(project, options) {
super(project, (0, util_1.deepMerge)([
{
capture: {
buildCapture: {
buildCommand: "go build .",
},
compilerConfiguration: {
covConfigure: [["--go"]],
},
files: {
excludeRegex: "(vendor/.*|bin/.*|dist/.*)",
},
languages: {
include: [coverity_config_1.LanguagesConfigurationInclude.GO],
},
},
},
options,
]));
}
}
exports.PolarisGoCoverity = PolarisGoCoverity;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY292ZXJpdHktZ28uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcG9sYXJpcy9jb3Zlcml0eS1nby50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEseUNBQTZDO0FBRTdDLHVEQUFrRTtBQUVsRSxrQ0FBb0M7QUFTcEM7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtCRztBQUNILE1BQWEsaUJBQWtCLFNBQVEsMEJBQWU7O0lBQ3BELFlBQVksT0FBZ0IsRUFBRSxPQUFpQztRQUM3RCxLQUFLLENBQ0gsT0FBTyxFQUNQLElBQUEsZ0JBQVMsRUFBQztZQUNSO2dCQUNFLE9BQU8sRUFBRTtvQkFDUCxZQUFZLEVBQUU7d0JBQ1osWUFBWSxFQUFFLFlBQVk7cUJBQzNCO29CQUNELHFCQUFxQixFQUFFO3dCQUNyQixZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO3FCQUN6QjtvQkFDRCxLQUFLLEVBQUU7d0JBQ0wsWUFBWSxFQUFFLDRCQUE0QjtxQkFDM0M7b0JBQ0QsU0FBUyxFQUFFO3dCQUNULE9BQU8sRUFBRSxDQUFDLCtDQUE2QixDQUFDLEVBQUUsQ0FBQztxQkFDNUM7aUJBQ0Y7YUFDRjtZQUNELE9BQU87U0FDUixDQUE2QixDQUMvQixDQUFDO0lBQ0osQ0FBQzs7QUF4QkgsOENBeUJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUG9sYXJpc0NvdmVyaXR5IH0gZnJvbSBcIi4vY292ZXJpdHlcIjtcbmltcG9ydCB0eXBlIHsgUG9sYXJpc0NvdmVyaXR5T3B0aW9ucyB9IGZyb20gXCIuL2NvdmVyaXR5XCI7XG5pbXBvcnQgeyBMYW5ndWFnZXNDb25maWd1cmF0aW9uSW5jbHVkZSB9IGZyb20gXCIuL2NvdmVyaXR5LWNvbmZpZ1wiO1xuaW1wb3J0IHR5cGUgeyBQcm9qZWN0IH0gZnJvbSBcIi4uL3Byb2plY3RcIjtcbmltcG9ydCB7IGRlZXBNZXJnZSB9IGZyb20gXCIuLi91dGlsXCI7XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgYFBvbGFyaXNDb3Zlcml0eUdvYC5cbiAqXG4gKiBFeHRlbmRzIGJhc2Ugb3B0aW9ucyB3aXRoIEdvLXNwZWNpZmljIGRlZmF1bHRzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFBvbGFyaXNDb3Zlcml0eUdvT3B0aW9ucyBleHRlbmRzIFBvbGFyaXNDb3Zlcml0eU9wdGlvbnMge31cblxuLyoqXG4gKiBBIENvdmVyaXR5IG9uIFBvbGFyaXMgY29uZmlndXJhdGlvbiBwcmVzZXQgZm9yIEdvIHByb2plY3RzLlxuICpcbiAqIFByb3ZpZGVzIHNlbnNpYmxlIGRlZmF1bHRzIGZvciBHbyBhbmFseXNpczpcbiAqIC0gYGNhcHR1cmUubGFuZ3VhZ2VzLmluY2x1ZGVgID0gYFtnb11gXG4gKiAtIGBjYXB0dXJlLmJ1aWxkQ2FwdHVyZS5idWlsZENvbW1hbmRgID0gYGdvIGJ1aWxkIC5gXG4gKiAtIGBjYXB0dXJlLmNvbXBpbGVyQ29uZmlndXJhdGlvbi5jb3ZDb25maWd1cmVgID0gYFtbXCItLWdvXCJdXWBcbiAqIC0gYGNhcHR1cmUuZmlsZXMuZXhjbHVkZVJlZ2V4YCBleGNsdWRlcyBgdmVuZG9yYCwgYGJpbmAgYW5kIG90aGVyXG4gKiAgIGNvbnZlbnRpb25hbCBHbyBidWlsZCBhcnRpZmFjdHNcbiAqXG4gKiBBbGwgZGVmYXVsdHMgY2FuIGJlIG92ZXJyaWRkZW4gdmlhIG9wdGlvbnMuIE5lc3RlZCBvcHRpb25zIChlLmcuXG4gKiBgY2FwdHVyZWApIGFyZSBkZWVwLW1lcmdlZCB3aXRoIHRoZSBkZWZhdWx0cywgc28gb3ZlcnJpZGluZyBvbmUgbmVzdGVkXG4gKiBmaWVsZCBkb2VzIG5vdCBkcm9wIHRoZSBvdGhlciBkZWZhdWx0cyBpbiB0aGF0IHN1YnRyZWUuXG4gKlxuICogQGV4YW1wbGVcbiAqIG5ldyBQb2xhcmlzR29Db3Zlcml0eShwcm9qZWN0LCB7XG4gKiAgIGNvbW1pdDoge30sXG4gKiB9KTtcbiAqL1xuZXhwb3J0IGNsYXNzIFBvbGFyaXNHb0NvdmVyaXR5IGV4dGVuZHMgUG9sYXJpc0NvdmVyaXR5IHtcbiAgY29uc3RydWN0b3IocHJvamVjdDogUHJvamVjdCwgb3B0aW9uczogUG9sYXJpc0NvdmVyaXR5R29PcHRpb25zKSB7XG4gICAgc3VwZXIoXG4gICAgICBwcm9qZWN0LFxuICAgICAgZGVlcE1lcmdlKFtcbiAgICAgICAge1xuICAgICAgICAgIGNhcHR1cmU6IHtcbiAgICAgICAgICAgIGJ1aWxkQ2FwdHVyZToge1xuICAgICAgICAgICAgICBidWlsZENvbW1hbmQ6IFwiZ28gYnVpbGQgLlwiLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGNvbXBpbGVyQ29uZmlndXJhdGlvbjoge1xuICAgICAgICAgICAgICBjb3ZDb25maWd1cmU6IFtbXCItLWdvXCJdXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBmaWxlczoge1xuICAgICAgICAgICAgICBleGNsdWRlUmVnZXg6IFwiKHZlbmRvci8uKnxiaW4vLip8ZGlzdC8uKilcIixcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBsYW5ndWFnZXM6IHtcbiAgICAgICAgICAgICAgaW5jbHVkZTogW0xhbmd1YWdlc0NvbmZpZ3VyYXRpb25JbmNsdWRlLkdPXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgb3B0aW9ucyxcbiAgICAgIF0pIGFzIFBvbGFyaXNDb3Zlcml0eUdvT3B0aW9ucyxcbiAgICApO1xuICB9XG59XG4iXX0=