@kubernetes-models/flux-cd
Version:
92 lines (91 loc) • 4.28 kB
TypeScript
import { IComGithubFluxcdPkgApisAclAccessFrom } from "../../github.com/fluxcd/pkg/apis/acl/AccessFrom.js";
import { IComGithubFluxcdSourceControllerApiV1beta2GitRepositoryInclude } from "./GitRepositoryInclude.js";
import { IComGithubFluxcdSourceControllerApiV1beta2GitRepositoryRef } from "./GitRepositoryRef.js";
import { IComGithubFluxcdPkgApisMetaLocalObjectReference } from "../../github.com/fluxcd/pkg/apis/meta/LocalObjectReference.js";
import { IComGithubFluxcdSourceControllerApiV1beta2GitRepositoryVerification } from "./GitRepositoryVerification.js";
import { ModelData, Model } from "@kubernetes-models/base";
/**
* GitRepositorySpec specifies the required configuration to produce an
* Artifact for a Git repository.
*/
export interface IGitRepositorySpec {
/**
* AccessFrom specifies an Access Control List for allowing cross-namespace
* references to this object.
* NOTE: Not implemented, provisional as of https://github.com/fluxcd/flux2/pull/2092
*/
"accessFrom"?: IComGithubFluxcdPkgApisAclAccessFrom;
/**
* GitImplementation specifies which Git client library implementation to
* use. Defaults to 'go-git', valid values are ('go-git', 'libgit2').
* Deprecated: gitImplementation is deprecated now that 'go-git' is the
* only supported implementation.
*/
"gitImplementation"?: "go-git" | "libgit2";
/**
* Ignore overrides the set of excluded patterns in the .sourceignore format
* (which is the same as .gitignore). If not provided, a default will be used,
* consult the documentation for your version to find out what those are.
*/
"ignore"?: string;
/**
* Include specifies a list of GitRepository resources which Artifacts
* should be included in the Artifact produced for this GitRepository.
*/
"include"?: Array<IComGithubFluxcdSourceControllerApiV1beta2GitRepositoryInclude>;
"interval": string;
/**
* RecurseSubmodules enables the initialization of all submodules within
* the GitRepository as cloned from the URL, using their default settings.
*/
"recurseSubmodules"?: boolean;
/**
* Reference specifies the Git reference to resolve and monitor for
* changes, defaults to the 'master' branch.
*/
"ref"?: IComGithubFluxcdSourceControllerApiV1beta2GitRepositoryRef;
/**
* SecretRef specifies the Secret containing authentication credentials for
* the GitRepository.
* For HTTPS repositories the Secret must contain 'username' and 'password'
* fields for basic auth or 'bearerToken' field for token auth.
* For SSH repositories the Secret must contain 'identity'
* and 'known_hosts' fields.
*/
"secretRef"?: IComGithubFluxcdPkgApisMetaLocalObjectReference;
/**
* Suspend tells the controller to suspend the reconciliation of this
* GitRepository.
*/
"suspend"?: boolean;
"timeout"?: string;
/**
* URL specifies the Git repository URL, it can be an HTTP/S or SSH address.
*/
"url": string;
/**
* Verification specifies the configuration to verify the Git commit
* signature(s).
*/
"verify"?: IComGithubFluxcdSourceControllerApiV1beta2GitRepositoryVerification;
}
/**
* GitRepositorySpec specifies the required configuration to produce an
* Artifact for a Git repository.
*/
export declare class GitRepositorySpec extends Model<IGitRepositorySpec> implements IGitRepositorySpec {
"accessFrom"?: IComGithubFluxcdPkgApisAclAccessFrom;
"gitImplementation"?: "go-git" | "libgit2";
"ignore"?: string;
"include"?: Array<IComGithubFluxcdSourceControllerApiV1beta2GitRepositoryInclude>;
"interval": string;
"recurseSubmodules"?: boolean;
"ref"?: IComGithubFluxcdSourceControllerApiV1beta2GitRepositoryRef;
"secretRef"?: IComGithubFluxcdPkgApisMetaLocalObjectReference;
"suspend"?: boolean;
"timeout"?: string;
"url": string;
"verify"?: IComGithubFluxcdSourceControllerApiV1beta2GitRepositoryVerification;
constructor(data?: ModelData<IGitRepositorySpec>);
}
export type { IGitRepositorySpec as IComGithubFluxcdSourceControllerApiV1beta2GitRepositorySpec, GitRepositorySpec as ComGithubFluxcdSourceControllerApiV1beta2GitRepositorySpec };