Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refactor(google): Update to latest google credentials style. #1452

Merged
merged 1 commit into from
Oct 25, 2019

Conversation

duftler
Copy link

@duftler duftler commented Oct 25, 2019

No description provided.

@duftler
Copy link
Author

duftler commented Oct 25, 2019

@german-muzquiz please review

Copy link
Contributor

@german-muzquiz german-muzquiz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me

@duftler duftler merged commit ebc65d2 into spinnaker:master Oct 25, 2019
@duftler duftler deleted the update-google-creds branch October 25, 2019 17:37
german-muzquiz pushed a commit to armory-io/halyard that referenced this pull request Nov 5, 2019
* fix(config): parse 'oauthScopes' stanzas that were incorrectly written (spinnaker#1376)

* refactor(config): remove a pointless try/catch block

* refactor(tests): remove an unused import

* fix(config): parse 'oauthScopes' stanzas that were incorrectly written

The old version of Lombok used in Halyard <=1.21 didn't copy
@JsonProperty annotations to the generated methods. This means Jackson
was seeing the field as 'oAuthScopes' and the getter/setter as a
separate 'oauthScopes' property. The same data would be written to both
properties, and during parsing whichever came last in the file would be
persisted into the object.

With new versions of Lombok (>=1.18.8), the @JsonProperty annotation is
copied to the bean methods, so the 'oauthScopes' property disappears and
Jackson can no longer parse those old files.

This commit adds some methods to support parsing the files generated by
previous versions of Halyard, but will no longer write out the
incorrect duplicate data.

* chore(copyright): add a missing copyright header

* chore(dependencies): Autobump korkVersion (spinnaker#1375)

* fix(core): Fix reading of external files as binary instead of text (spinnaker#1380)

* feat(secret): decrypt secrets before sending to deck (spinnaker#1379)

* feat(secret): decrypt secrets before sending to deck

* code review changes

* chore(dependencies): Autobump korkVersion (spinnaker#1383)

* fix(build): remove old usage of korkVersion (spinnaker#1385)

* chore(dependencies): Autobump korkVersion (spinnaker#1384)

* chore(build): Update cloudbuild.yaml file (spinnaker#1388)

Remove the $REPO_NAME variable from the cloudbuild.yaml file; this is being used
to decide the name of the image to push which will not always correspond to the
image name. In particular, if we start publishing both alpine and ubuntu images
we'll want the image name to have a suffix reflecting that.

* chore(dependencies): Autobump korkVersion (spinnaker#1389)

* chore(dependencies): Autobump korkVersion (spinnaker#1390)

* feat(plugins): adding halyard commands for plugins (spinnaker#1386)

* feat(plugins): adding halyard commands for plugins

* chore(refactor): use toMap instead of a concurrentMap collector

* feat(notifications): Add Github Status support (spinnaker#1374)

* chore(dependencies): Autobump korkVersion (spinnaker#1392)

* feat(plugins): enable/disable downloading plugins (spinnaker#1393)

* chore(dependencies): Autobump korkVersion (spinnaker#1394)

* chore(dependencies): Autobump korkVersion (spinnaker#1395)

* feat(kubernetes): Support for tolerations (spinnaker#1396)

* fix(kubernetes): Added support for tolerationn

Signed-off-by: rverma-nikiai <rohit.verma@niki.ai>

* feat(kubernetes): Added support for Tolerations

Added support for tolerations

Signed-off-by: rverma-nikiai <rohit.verma@niki.ai>

* feat(kubernetes): Support for tolerations

* fix(kubernetes): Added support for Tolerations, fixed access

* chore(dependencies): Autobump korkVersion (spinnaker#1397)

* feat(artifacts): add feature flag to turn on artifactsRewrite (spinnaker#1398)

* feat(deployments): Update component sizing command to allow container component sizing. (spinnaker#1387)

* feat(deploy/kubernetes): Option to select the image variant to deploy (spinnaker#1401)

* refactor(deploy/kubernetes): Removed duplicated code

* feat(deploy/kubernetes): Option to select the image variant to deploy

Supports `slim` and `ubuntu`, the former being the default.
Ubuntu image supported starting with v1.16.0.

* chore(dependencies): Autobump korkVersion (spinnaker#1403)

* fix(docs): s/Kubenretes/Kubernetes (spinnaker#1402)

* fix(ldap): Fix allowing back blank ldap search base when using search filter (spinnaker#1391)

* chore(dependencies): Autobump korkVersion (spinnaker#1404)

* chore(plugins): rename plugin downloading commands to kebab-case (spinnaker#1408)

* chore(dependencies): Autobump korkVersion (spinnaker#1410)

* refactor(deploy): Adapt to changes in kork-config (spinnaker#1407)

* fix(notifications): fix editing notifications in halyard (spinnaker#1413)

Broken in spinnaker#1374

Closes spinnaker/spinnaker#4834

* chore(dependencies): Autobump korkVersion (spinnaker#1415)

* feat(front50): Support AWS S3 SSE (spinnaker#1399)

* chore(dependencies): Autobump korkVersion (spinnaker#1417)

* chore(dependencies): Autobump korkVersion (spinnaker#1418)

* chore(dependencies): Autobump korkVersion (spinnaker#1419)

* feat(telemetry): adds endpoint and enable settings for stats collection (spinnaker#1406)

* feat(telemetry): adds endpoint and enable settings for telemetry

* chore(dependencies): Autobump korkVersion (spinnaker#1421)

* fix(eks): Halyard doesn't work with new EKS kube config (spinnaker#1382)

Fixes spinnaker/spinnaker#4712

Signed-off-by: Constantin Muraru <cmuraru@adobe.com>

* fix(stats): Replace UUID with ULID as spinnaker instance idententifier (spinnaker#1423)

* feat(secrets): Support SAML metadata as secret (spinnaker#1411)

* chore(dependencies): Autobump korkVersion (spinnaker#1426)

* fix(saml): make email address configurable (spinnaker#1427)

* fix(saml): make email address configurable

* update commands for saml email

* feat(canary): add newrelic as canary service (spinnaker#1422)

* chore(core): Compile using the java compiler (spinnaker#1432)

Only test code is written in groovy, so we never have to worry about
java code depending on groovy code; remove the override that is
causing java source files to be compiled with the groovy compiler.

* fix(kubeconfig): Get contents of local kubeconfig files (spinnaker#1425)

* chore(dependencies): Autobump korkVersion (spinnaker#1433)

* chore(dependencies): Autobump korkVersion (spinnaker#1440)

* feat(plugins): enable plugin config overrides (spinnaker#1439)

* feat(plugins): enable plugin config overrides

* chore(plugins): create getPluginConfigurations in Plugins class

* feat(build): Ubuntu base image support (spinnaker#1438)

* Composing the docker images build by having a shared first stage to build the JAR.
* Release scripts support both default and ubuntu image variants. Fully backward compatible as the existing tagging convention is left untouched, the new ubuntu images have their version tag appended with `-ubuntu`.
* Deleted unused Dockerfile and cloudbuild config files.

*  fix(install): fix the problem with JDK 13.0 (spinnaker#1445)

* feat(signalfx): add endpoint, scope and location configuration (spinnaker#1429)

* feat(secrets/gcs): Support for decrypting spinnaker secrets in GCS (spinnaker#1441)

* feat(monitoring): add new relic monitoring daemon config (spinnaker#1442)

* feat(canary): add new relic monitoring daemon config

* feat(monitoring): replace short description for metric store commands

s/authentication method/metric store

* feat(kubernetes): add flag for Kubernetes custom resources (spinnaker#1436)

* feat(kubernetes): add flag for Kubernetes custom resources

Adds flag `--custom-resources` to specify CRDs that should be cached by clouddriver. Defining custom resources here is required for them to be used in patch and delete pipeline stages.

* feat(kubernetes) validation for customResources and allow setting all fields

* Update docs for custom resources flag

* feat(kubernetes): clean up CLI arguments for adding custom resources

Switched from serialized format for setting fields to only allowing adding custom resource when editing an account.

`--spinnaker-kind` and `--versioned` are optional but are not valid arguments without `--add-custom-resource`.

* feat(kubernetes): fix docs

* chore(dependencies): Autobump korkVersion (spinnaker#1447)

* fix(kubernetes): remove user-facing references to todo(lwander) (spinnaker#1449)

* fix(kubernetes): remove user-facing references to todo(lwander)

* fix(kubernetes): formatting

* test(k8s): Verify propagation of service account name to pod spec. (spinnaker#1450)

* fix(plugins): plugins should be able to reference their own config values (spinnaker#1444)

* fix(halyard): Change deployment to support new Kubernetes API (… (spinnaker#1443)

* chore(core): remove unused jobs feature flag (spinnaker#1451)

* chore(dependencies): Autobump korkVersion (spinnaker#1448)

* refactor(google): Update to latest google credentials style. (spinnaker#1452)

* fix(deployments): Fix sub-service name for HA echo in warning m… (spinnaker#1435)

* feat(slack): Allow configurable slack endpoint (spinnaker#1446)

* chore(dependencies): Autobump korkVersion (spinnaker#1453)

* feat(config): HalconfigDirStruct source of truth, allow override (spinnaker#1454)

* feat(artifacts): add git repo artifact support (spinnaker#1458)

* fix(provider/aws): Support for specifying lifecycle hooks for AWS accounts (spinnaker#1420)

* fix(provider/aws): Support for specifying lifecycle hooks for AWS accounts
german-muzquiz pushed a commit to armory-io/halyard that referenced this pull request Nov 8, 2019
* fix(config): parse 'oauthScopes' stanzas that were incorrectly written (spinnaker#1376)

* refactor(config): remove a pointless try/catch block

* refactor(tests): remove an unused import

* fix(config): parse 'oauthScopes' stanzas that were incorrectly written

The old version of Lombok used in Halyard <=1.21 didn't copy
@JsonProperty annotations to the generated methods. This means Jackson
was seeing the field as 'oAuthScopes' and the getter/setter as a
separate 'oauthScopes' property. The same data would be written to both
properties, and during parsing whichever came last in the file would be
persisted into the object.

With new versions of Lombok (>=1.18.8), the @JsonProperty annotation is
copied to the bean methods, so the 'oauthScopes' property disappears and
Jackson can no longer parse those old files.

This commit adds some methods to support parsing the files generated by
previous versions of Halyard, but will no longer write out the
incorrect duplicate data.

* chore(copyright): add a missing copyright header

* chore(dependencies): Autobump korkVersion (spinnaker#1375)

* fix(core): Fix reading of external files as binary instead of text (spinnaker#1380)

* feat(secret): decrypt secrets before sending to deck (spinnaker#1379)

* feat(secret): decrypt secrets before sending to deck

* code review changes

* chore(dependencies): Autobump korkVersion (spinnaker#1383)

* fix(build): remove old usage of korkVersion (spinnaker#1385)

* chore(dependencies): Autobump korkVersion (spinnaker#1384)

* chore(build): Update cloudbuild.yaml file (spinnaker#1388)

Remove the $REPO_NAME variable from the cloudbuild.yaml file; this is being used
to decide the name of the image to push which will not always correspond to the
image name. In particular, if we start publishing both alpine and ubuntu images
we'll want the image name to have a suffix reflecting that.

* chore(dependencies): Autobump korkVersion (spinnaker#1389)

* chore(dependencies): Autobump korkVersion (spinnaker#1390)

* feat(plugins): adding halyard commands for plugins (spinnaker#1386)

* feat(plugins): adding halyard commands for plugins

* chore(refactor): use toMap instead of a concurrentMap collector

* feat(notifications): Add Github Status support (spinnaker#1374)

* chore(dependencies): Autobump korkVersion (spinnaker#1392)

* feat(plugins): enable/disable downloading plugins (spinnaker#1393)

* chore(dependencies): Autobump korkVersion (spinnaker#1394)

* chore(dependencies): Autobump korkVersion (spinnaker#1395)

* feat(kubernetes): Support for tolerations (spinnaker#1396)

* fix(kubernetes): Added support for tolerationn

Signed-off-by: rverma-nikiai <rohit.verma@niki.ai>

* feat(kubernetes): Added support for Tolerations

Added support for tolerations

Signed-off-by: rverma-nikiai <rohit.verma@niki.ai>

* feat(kubernetes): Support for tolerations

* fix(kubernetes): Added support for Tolerations, fixed access

* chore(dependencies): Autobump korkVersion (spinnaker#1397)

* feat(artifacts): add feature flag to turn on artifactsRewrite (spinnaker#1398)

* feat(deployments): Update component sizing command to allow container component sizing. (spinnaker#1387)

* feat(deploy/kubernetes): Option to select the image variant to deploy (spinnaker#1401)

* refactor(deploy/kubernetes): Removed duplicated code

* feat(deploy/kubernetes): Option to select the image variant to deploy

Supports `slim` and `ubuntu`, the former being the default.
Ubuntu image supported starting with v1.16.0.

* chore(dependencies): Autobump korkVersion (spinnaker#1403)

* fix(docs): s/Kubenretes/Kubernetes (spinnaker#1402)

* fix(ldap): Fix allowing back blank ldap search base when using search filter (spinnaker#1391)

* chore(dependencies): Autobump korkVersion (spinnaker#1404)

* chore(plugins): rename plugin downloading commands to kebab-case (spinnaker#1408)

* chore(dependencies): Autobump korkVersion (spinnaker#1410)

* refactor(deploy): Adapt to changes in kork-config (spinnaker#1407)

* fix(notifications): fix editing notifications in halyard (spinnaker#1413)

Broken in spinnaker#1374

Closes spinnaker/spinnaker#4834

* chore(dependencies): Autobump korkVersion (spinnaker#1415)

* feat(front50): Support AWS S3 SSE (spinnaker#1399)

* chore(dependencies): Autobump korkVersion (spinnaker#1417)

* chore(dependencies): Autobump korkVersion (spinnaker#1418)

* chore(dependencies): Autobump korkVersion (spinnaker#1419)

* feat(telemetry): adds endpoint and enable settings for stats collection (spinnaker#1406)

* feat(telemetry): adds endpoint and enable settings for telemetry

* chore(dependencies): Autobump korkVersion (spinnaker#1421)

* fix(eks): Halyard doesn't work with new EKS kube config (spinnaker#1382)

Fixes spinnaker/spinnaker#4712

Signed-off-by: Constantin Muraru <cmuraru@adobe.com>

* fix(stats): Replace UUID with ULID as spinnaker instance idententifier (spinnaker#1423)

* feat(secrets): Support SAML metadata as secret (spinnaker#1411)

* chore(dependencies): Autobump korkVersion (spinnaker#1426)

* fix(saml): make email address configurable (spinnaker#1427)

* fix(saml): make email address configurable

* update commands for saml email

* feat(canary): add newrelic as canary service (spinnaker#1422)

* chore(core): Compile using the java compiler (spinnaker#1432)

Only test code is written in groovy, so we never have to worry about
java code depending on groovy code; remove the override that is
causing java source files to be compiled with the groovy compiler.

* fix(kubeconfig): Get contents of local kubeconfig files (spinnaker#1425)

* chore(dependencies): Autobump korkVersion (spinnaker#1433)

* chore(dependencies): Autobump korkVersion (spinnaker#1440)

* feat(plugins): enable plugin config overrides (spinnaker#1439)

* feat(plugins): enable plugin config overrides

* chore(plugins): create getPluginConfigurations in Plugins class

* feat(build): Ubuntu base image support (spinnaker#1438)

* Composing the docker images build by having a shared first stage to build the JAR.
* Release scripts support both default and ubuntu image variants. Fully backward compatible as the existing tagging convention is left untouched, the new ubuntu images have their version tag appended with `-ubuntu`.
* Deleted unused Dockerfile and cloudbuild config files.

*  fix(install): fix the problem with JDK 13.0 (spinnaker#1445)

* feat(signalfx): add endpoint, scope and location configuration (spinnaker#1429)

* feat(secrets/gcs): Support for decrypting spinnaker secrets in GCS (spinnaker#1441)

* feat(monitoring): add new relic monitoring daemon config (spinnaker#1442)

* feat(canary): add new relic monitoring daemon config

* feat(monitoring): replace short description for metric store commands

s/authentication method/metric store

* feat(kubernetes): add flag for Kubernetes custom resources (spinnaker#1436)

* feat(kubernetes): add flag for Kubernetes custom resources

Adds flag `--custom-resources` to specify CRDs that should be cached by clouddriver. Defining custom resources here is required for them to be used in patch and delete pipeline stages.

* feat(kubernetes) validation for customResources and allow setting all fields

* Update docs for custom resources flag

* feat(kubernetes): clean up CLI arguments for adding custom resources

Switched from serialized format for setting fields to only allowing adding custom resource when editing an account.

`--spinnaker-kind` and `--versioned` are optional but are not valid arguments without `--add-custom-resource`.

* feat(kubernetes): fix docs

* chore(dependencies): Autobump korkVersion (spinnaker#1447)

* fix(kubernetes): remove user-facing references to todo(lwander) (spinnaker#1449)

* fix(kubernetes): remove user-facing references to todo(lwander)

* fix(kubernetes): formatting

* test(k8s): Verify propagation of service account name to pod spec. (spinnaker#1450)

* fix(plugins): plugins should be able to reference their own config values (spinnaker#1444)

* fix(halyard): Change deployment to support new Kubernetes API (… (spinnaker#1443)

* chore(core): remove unused jobs feature flag (spinnaker#1451)

* chore(dependencies): Autobump korkVersion (spinnaker#1448)

* refactor(google): Update to latest google credentials style. (spinnaker#1452)

* fix(deployments): Fix sub-service name for HA echo in warning m… (spinnaker#1435)

* feat(slack): Allow configurable slack endpoint (spinnaker#1446)

* chore(dependencies): Autobump korkVersion (spinnaker#1453)

* feat(config): HalconfigDirStruct source of truth, allow override (spinnaker#1454)

* feat(artifacts): add git repo artifact support (spinnaker#1458)

* fix(provider/aws): Support for specifying lifecycle hooks for AWS accounts (spinnaker#1420)

* fix(provider/aws): Support for specifying lifecycle hooks for AWS accounts

* fix(config): fix anonymous Google storage credentials (spinnaker#1462)
ncknt pushed a commit to armory-io/halyard that referenced this pull request Dec 10, 2019
* fix(config): parse 'oauthScopes' stanzas that were incorrectly written (spinnaker#1376)

* refactor(config): remove a pointless try/catch block

* refactor(tests): remove an unused import

* fix(config): parse 'oauthScopes' stanzas that were incorrectly written

The old version of Lombok used in Halyard <=1.21 didn't copy
@JsonProperty annotations to the generated methods. This means Jackson
was seeing the field as 'oAuthScopes' and the getter/setter as a
separate 'oauthScopes' property. The same data would be written to both
properties, and during parsing whichever came last in the file would be
persisted into the object.

With new versions of Lombok (>=1.18.8), the @JsonProperty annotation is
copied to the bean methods, so the 'oauthScopes' property disappears and
Jackson can no longer parse those old files.

This commit adds some methods to support parsing the files generated by
previous versions of Halyard, but will no longer write out the
incorrect duplicate data.

* chore(copyright): add a missing copyright header

* chore(dependencies): Autobump korkVersion (spinnaker#1375)

* fix(core): Fix reading of external files as binary instead of text (spinnaker#1380)

* feat(secret): decrypt secrets before sending to deck (spinnaker#1379)

* feat(secret): decrypt secrets before sending to deck

* code review changes

* chore(dependencies): Autobump korkVersion (spinnaker#1383)

* fix(build): remove old usage of korkVersion (spinnaker#1385)

* chore(dependencies): Autobump korkVersion (spinnaker#1384)

* chore(build): Update cloudbuild.yaml file (spinnaker#1388)

Remove the $REPO_NAME variable from the cloudbuild.yaml file; this is being used
to decide the name of the image to push which will not always correspond to the
image name. In particular, if we start publishing both alpine and ubuntu images
we'll want the image name to have a suffix reflecting that.

* chore(dependencies): Autobump korkVersion (spinnaker#1389)

* chore(dependencies): Autobump korkVersion (spinnaker#1390)

* feat(plugins): adding halyard commands for plugins (spinnaker#1386)

* feat(plugins): adding halyard commands for plugins

* chore(refactor): use toMap instead of a concurrentMap collector

* feat(notifications): Add Github Status support (spinnaker#1374)

* chore(dependencies): Autobump korkVersion (spinnaker#1392)

* feat(plugins): enable/disable downloading plugins (spinnaker#1393)

* chore(dependencies): Autobump korkVersion (spinnaker#1394)

* chore(dependencies): Autobump korkVersion (spinnaker#1395)

* feat(kubernetes): Support for tolerations (spinnaker#1396)

* fix(kubernetes): Added support for tolerationn

Signed-off-by: rverma-nikiai <rohit.verma@niki.ai>

* feat(kubernetes): Added support for Tolerations

Added support for tolerations

Signed-off-by: rverma-nikiai <rohit.verma@niki.ai>

* feat(kubernetes): Support for tolerations

* fix(kubernetes): Added support for Tolerations, fixed access

* chore(dependencies): Autobump korkVersion (spinnaker#1397)

* feat(artifacts): add feature flag to turn on artifactsRewrite (spinnaker#1398)

* feat(deployments): Update component sizing command to allow container component sizing. (spinnaker#1387)

* feat(deploy/kubernetes): Option to select the image variant to deploy (spinnaker#1401)

* refactor(deploy/kubernetes): Removed duplicated code

* feat(deploy/kubernetes): Option to select the image variant to deploy

Supports `slim` and `ubuntu`, the former being the default.
Ubuntu image supported starting with v1.16.0.

* chore(dependencies): Autobump korkVersion (spinnaker#1403)

* fix(docs): s/Kubenretes/Kubernetes (spinnaker#1402)

* fix(ldap): Fix allowing back blank ldap search base when using search filter (spinnaker#1391)

* chore(dependencies): Autobump korkVersion (spinnaker#1404)

* chore(plugins): rename plugin downloading commands to kebab-case (spinnaker#1408)

* chore(dependencies): Autobump korkVersion (spinnaker#1410)

* refactor(deploy): Adapt to changes in kork-config (spinnaker#1407)

* fix(notifications): fix editing notifications in halyard (spinnaker#1413)

Broken in spinnaker#1374

Closes spinnaker/spinnaker#4834

* chore(dependencies): Autobump korkVersion (spinnaker#1415)

* feat(front50): Support AWS S3 SSE (spinnaker#1399)

* chore(dependencies): Autobump korkVersion (spinnaker#1417)

* chore(dependencies): Autobump korkVersion (spinnaker#1418)

* chore(dependencies): Autobump korkVersion (spinnaker#1419)

* feat(telemetry): adds endpoint and enable settings for stats collection (spinnaker#1406)

* feat(telemetry): adds endpoint and enable settings for telemetry

* chore(dependencies): Autobump korkVersion (spinnaker#1421)

* fix(eks): Halyard doesn't work with new EKS kube config (spinnaker#1382)

Fixes spinnaker/spinnaker#4712

Signed-off-by: Constantin Muraru <cmuraru@adobe.com>

* fix(stats): Replace UUID with ULID as spinnaker instance idententifier (spinnaker#1423)

* feat(secrets): Support SAML metadata as secret (spinnaker#1411)

* chore(dependencies): Autobump korkVersion (spinnaker#1426)

* fix(saml): make email address configurable (spinnaker#1427)

* fix(saml): make email address configurable

* update commands for saml email

* feat(canary): add newrelic as canary service (spinnaker#1422)

* chore(core): Compile using the java compiler (spinnaker#1432)

Only test code is written in groovy, so we never have to worry about
java code depending on groovy code; remove the override that is
causing java source files to be compiled with the groovy compiler.

* fix(kubeconfig): Get contents of local kubeconfig files (spinnaker#1425)

* chore(dependencies): Autobump korkVersion (spinnaker#1433)

* chore(dependencies): Autobump korkVersion (spinnaker#1440)

* feat(plugins): enable plugin config overrides (spinnaker#1439)

* feat(plugins): enable plugin config overrides

* chore(plugins): create getPluginConfigurations in Plugins class

* feat(build): Ubuntu base image support (spinnaker#1438)

* Composing the docker images build by having a shared first stage to build the JAR.
* Release scripts support both default and ubuntu image variants. Fully backward compatible as the existing tagging convention is left untouched, the new ubuntu images have their version tag appended with `-ubuntu`.
* Deleted unused Dockerfile and cloudbuild config files.

*  fix(install): fix the problem with JDK 13.0 (spinnaker#1445)

* feat(signalfx): add endpoint, scope and location configuration (spinnaker#1429)

* feat(secrets/gcs): Support for decrypting spinnaker secrets in GCS (spinnaker#1441)

* feat(monitoring): add new relic monitoring daemon config (spinnaker#1442)

* feat(canary): add new relic monitoring daemon config

* feat(monitoring): replace short description for metric store commands

s/authentication method/metric store

* feat(kubernetes): add flag for Kubernetes custom resources (spinnaker#1436)

* feat(kubernetes): add flag for Kubernetes custom resources

Adds flag `--custom-resources` to specify CRDs that should be cached by clouddriver. Defining custom resources here is required for them to be used in patch and delete pipeline stages.

* feat(kubernetes) validation for customResources and allow setting all fields

* Update docs for custom resources flag

* feat(kubernetes): clean up CLI arguments for adding custom resources

Switched from serialized format for setting fields to only allowing adding custom resource when editing an account.

`--spinnaker-kind` and `--versioned` are optional but are not valid arguments without `--add-custom-resource`.

* feat(kubernetes): fix docs

* chore(dependencies): Autobump korkVersion (spinnaker#1447)

* fix(kubernetes): remove user-facing references to todo(lwander) (spinnaker#1449)

* fix(kubernetes): remove user-facing references to todo(lwander)

* fix(kubernetes): formatting

* test(k8s): Verify propagation of service account name to pod spec. (spinnaker#1450)

* fix(plugins): plugins should be able to reference their own config values (spinnaker#1444)

* fix(halyard): Change deployment to support new Kubernetes API (… (spinnaker#1443)

* chore(core): remove unused jobs feature flag (spinnaker#1451)

* chore(dependencies): Autobump korkVersion (spinnaker#1448)

* refactor(google): Update to latest google credentials style. (spinnaker#1452)

* fix(deployments): Fix sub-service name for HA echo in warning m… (spinnaker#1435)

* feat(slack): Allow configurable slack endpoint (spinnaker#1446)

* chore(dependencies): Autobump korkVersion (spinnaker#1453)

* feat(config): HalconfigDirStruct source of truth, allow override (spinnaker#1454)

* feat(artifacts): add git repo artifact support (spinnaker#1458)

* fix(provider/aws): Support for specifying lifecycle hooks for AWS accounts (spinnaker#1420)

* fix(provider/aws): Support for specifying lifecycle hooks for AWS accounts

* fix(config): fix anonymous Google storage credentials (spinnaker#1462)

* fix(build): Missing Ubuntu image dependency (spinnaker#1464)

* fix(build): `spinnaker` user/group id=1000 in Ubuntu image (spinnaker#1465)

The slim/alpine image uses 1000/1000 as the uid and gid for the `spinnaker` user. Doing the same thing for the Ubuntu image makes it simpler for installers like the Helm chart to use either image variant.

* fix(saml): get saml file path instead of file contents in saml validator (spinnaker#1455)

* fix(saml): get saml file path instead of file contents in saml validator

* remove redundant SecretSessionManager

* fix(artifacts/gitrepo): use Boolean class instead of primitive (spinnaker#1466)

* feat(halyard/localfiles): Support relative local files in hal config (spinnaker#1416)

* feat(localfiles): Support relative local files to hal config home

Usually when referencing local files in main hal config with a relative
path, halyard throws this error:

Problems in Global:
! ERROR Failed to backup user file: default/files/kubeconfig-main

- Failed to generate config.

With this change, relative files will be automatically resolved relative
from hal config home.

* feat(localfiles): Only prefix files in subdirectories of input prefix

* feat(halyard/localfiles): Use getter for hal config directory

* feat(halyard/localfiles): Error on relative files escaping hal home

* feat(localfiles): Normalize path on comparison for removing prefix

* chore(localfiles): Paths for building a path instead of string concat

* chore(localfiles): Save field references to child nodes

* chore(localfiles): Removed {%halconfig-dir%}, moved some code to parser

* chore(localfiles): Support backups made with {%halconfig-dir%}

* chore(localfiles): Support backups made with {%halconfig-dir%}

* chore(localfiles): Using java Path instead of string handling

* chore(localfiles): New FileService for getting file paths and contents

* chore(localfiles): Use FileService for getting files

* chore(dependencies): Autobump korkVersion (spinnaker#1460)

* feat(mergify): Allow OSS approvers to autosubmit (spinnaker#1470)

* chore(dependencies): Autobump korkVersion (spinnaker#1469)

* chore(dependencies): Autobump korkVersion (spinnaker#1471)

* feat(huaweicloud): first commit for huaweicloud (spinnaker#1461)

* feat(huaweicloud): first commit for huaweicloud

    r 3e29b2c feat(huaweicloud): first commit for huaweicloud
    r 14f49c4 feat(huaweicloud): add commands about account

* feat(huaweicloud): add commands of account

    r 3e29b2c feat(huaweicloud): first commit for huaweicloud
    r 14f49c4 feat(huaweicloud): add commands about account

* refactor(huaweicloud): add validator and change the way to input password

* feat(huaweicloud): add commands of bakery

* style(huaweicloud): add missed copyrights

* style(huaweicloud): make code simple

* Revert "feat(huaweicloud): first commit for huaweicloud (spinnaker#1461)" (spinnaker#1473)

This reverts commit d35767d.

* fix(deployments): Fixed k8s manifests templates generating invalid yaml (spinnaker#1456)

manifest templates were adding unnecessary commas when podAnnotations, podLabels, or serviceLabels were supplied causing deployments to fail.

* chore(dependencies): Autobump korkVersion (spinnaker#1475)

* chore(dependencies): Autobump korkVersion (spinnaker#1477)

* feat(huaweicloud): add provider of huaweicloud (spinnaker#1476)

* feat(huaweicloud): first commit for huaweicloud

    r 3e29b2c feat(huaweicloud): first commit for huaweicloud
    r 14f49c4 feat(huaweicloud): add commands about account

* feat(huaweicloud): add commands of account

    r 3e29b2c feat(huaweicloud): first commit for huaweicloud
    r 14f49c4 feat(huaweicloud): add commands about account

* refactor(huaweicloud): add validator and change the way to input password

* feat(huaweicloud): add commands of bakery

* style(huaweicloud): add missed copyrights

* style(huaweicloud): make code simple

* fix(huaweicloud): fix the bakery validate exception

* chore(dependencies): Autobump korkVersion (spinnaker#1478)

* chore(tools): Pulled latest changes from upstream master

* chore(logging): Log validation problems
ncknt added a commit to armory-io/halyard that referenced this pull request Jan 23, 2020
… "new" (#34)

* fix(config): parse 'oauthScopes' stanzas that were incorrectly written (spinnaker#1376)

* refactor(config): remove a pointless try/catch block

* refactor(tests): remove an unused import

* fix(config): parse 'oauthScopes' stanzas that were incorrectly written

The old version of Lombok used in Halyard <=1.21 didn't copy
@JsonProperty annotations to the generated methods. This means Jackson
was seeing the field as 'oAuthScopes' and the getter/setter as a
separate 'oauthScopes' property. The same data would be written to both
properties, and during parsing whichever came last in the file would be
persisted into the object.

With new versions of Lombok (>=1.18.8), the @JsonProperty annotation is
copied to the bean methods, so the 'oauthScopes' property disappears and
Jackson can no longer parse those old files.

This commit adds some methods to support parsing the files generated by
previous versions of Halyard, but will no longer write out the
incorrect duplicate data.

* chore(copyright): add a missing copyright header

* chore(dependencies): Autobump korkVersion (spinnaker#1375)

* fix(core): Fix reading of external files as binary instead of text (spinnaker#1380)

* feat(secret): decrypt secrets before sending to deck (spinnaker#1379)

* feat(secret): decrypt secrets before sending to deck

* code review changes

* chore(dependencies): Autobump korkVersion (spinnaker#1383)

* fix(build): remove old usage of korkVersion (spinnaker#1385)

* chore(dependencies): Autobump korkVersion (spinnaker#1384)

* chore(build): Update cloudbuild.yaml file (spinnaker#1388)

Remove the $REPO_NAME variable from the cloudbuild.yaml file; this is being used
to decide the name of the image to push which will not always correspond to the
image name. In particular, if we start publishing both alpine and ubuntu images
we'll want the image name to have a suffix reflecting that.

* chore(dependencies): Autobump korkVersion (spinnaker#1389)

* chore(dependencies): Autobump korkVersion (spinnaker#1390)

* feat(plugins): adding halyard commands for plugins (spinnaker#1386)

* feat(plugins): adding halyard commands for plugins

* chore(refactor): use toMap instead of a concurrentMap collector

* feat(notifications): Add Github Status support (spinnaker#1374)

* chore(dependencies): Autobump korkVersion (spinnaker#1392)

* feat(plugins): enable/disable downloading plugins (spinnaker#1393)

* chore(dependencies): Autobump korkVersion (spinnaker#1394)

* chore(dependencies): Autobump korkVersion (spinnaker#1395)

* feat(kubernetes): Support for tolerations (spinnaker#1396)

* fix(kubernetes): Added support for tolerationn

Signed-off-by: rverma-nikiai <rohit.verma@niki.ai>

* feat(kubernetes): Added support for Tolerations

Added support for tolerations

Signed-off-by: rverma-nikiai <rohit.verma@niki.ai>

* feat(kubernetes): Support for tolerations

* fix(kubernetes): Added support for Tolerations, fixed access

* chore(dependencies): Autobump korkVersion (spinnaker#1397)

* feat(artifacts): add feature flag to turn on artifactsRewrite (spinnaker#1398)

* feat(deployments): Update component sizing command to allow container component sizing. (spinnaker#1387)

* feat(deploy/kubernetes): Option to select the image variant to deploy (spinnaker#1401)

* refactor(deploy/kubernetes): Removed duplicated code

* feat(deploy/kubernetes): Option to select the image variant to deploy

Supports `slim` and `ubuntu`, the former being the default.
Ubuntu image supported starting with v1.16.0.

* chore(dependencies): Autobump korkVersion (spinnaker#1403)

* fix(docs): s/Kubenretes/Kubernetes (spinnaker#1402)

* fix(ldap): Fix allowing back blank ldap search base when using search filter (spinnaker#1391)

* chore(dependencies): Autobump korkVersion (spinnaker#1404)

* chore(plugins): rename plugin downloading commands to kebab-case (spinnaker#1408)

* chore(dependencies): Autobump korkVersion (spinnaker#1410)

* refactor(deploy): Adapt to changes in kork-config (spinnaker#1407)

* fix(notifications): fix editing notifications in halyard (spinnaker#1413)

Broken in spinnaker#1374

Closes spinnaker/spinnaker#4834

* chore(dependencies): Autobump korkVersion (spinnaker#1415)

* feat(front50): Support AWS S3 SSE (spinnaker#1399)

* chore(dependencies): Autobump korkVersion (spinnaker#1417)

* chore(dependencies): Autobump korkVersion (spinnaker#1418)

* chore(dependencies): Autobump korkVersion (spinnaker#1419)

* feat(telemetry): adds endpoint and enable settings for stats collection (spinnaker#1406)

* feat(telemetry): adds endpoint and enable settings for telemetry

* chore(dependencies): Autobump korkVersion (spinnaker#1421)

* fix(eks): Halyard doesn't work with new EKS kube config (spinnaker#1382)

Fixes spinnaker/spinnaker#4712

Signed-off-by: Constantin Muraru <cmuraru@adobe.com>

* fix(stats): Replace UUID with ULID as spinnaker instance idententifier (spinnaker#1423)

* feat(secrets): Support SAML metadata as secret (spinnaker#1411)

* chore(dependencies): Autobump korkVersion (spinnaker#1426)

* fix(saml): make email address configurable (spinnaker#1427)

* fix(saml): make email address configurable

* update commands for saml email

* feat(canary): add newrelic as canary service (spinnaker#1422)

* chore(core): Compile using the java compiler (spinnaker#1432)

Only test code is written in groovy, so we never have to worry about
java code depending on groovy code; remove the override that is
causing java source files to be compiled with the groovy compiler.

* fix(kubeconfig): Get contents of local kubeconfig files (spinnaker#1425)

* chore(dependencies): Autobump korkVersion (spinnaker#1433)

* chore(dependencies): Autobump korkVersion (spinnaker#1440)

* feat(plugins): enable plugin config overrides (spinnaker#1439)

* feat(plugins): enable plugin config overrides

* chore(plugins): create getPluginConfigurations in Plugins class

* feat(build): Ubuntu base image support (spinnaker#1438)

* Composing the docker images build by having a shared first stage to build the JAR.
* Release scripts support both default and ubuntu image variants. Fully backward compatible as the existing tagging convention is left untouched, the new ubuntu images have their version tag appended with `-ubuntu`.
* Deleted unused Dockerfile and cloudbuild config files.

*  fix(install): fix the problem with JDK 13.0 (spinnaker#1445)

* feat(signalfx): add endpoint, scope and location configuration (spinnaker#1429)

* feat(secrets/gcs): Support for decrypting spinnaker secrets in GCS (spinnaker#1441)

* feat(monitoring): add new relic monitoring daemon config (spinnaker#1442)

* feat(canary): add new relic monitoring daemon config

* feat(monitoring): replace short description for metric store commands

s/authentication method/metric store

* feat(kubernetes): add flag for Kubernetes custom resources (spinnaker#1436)

* feat(kubernetes): add flag for Kubernetes custom resources

Adds flag `--custom-resources` to specify CRDs that should be cached by clouddriver. Defining custom resources here is required for them to be used in patch and delete pipeline stages.

* feat(kubernetes) validation for customResources and allow setting all fields

* Update docs for custom resources flag

* feat(kubernetes): clean up CLI arguments for adding custom resources

Switched from serialized format for setting fields to only allowing adding custom resource when editing an account.

`--spinnaker-kind` and `--versioned` are optional but are not valid arguments without `--add-custom-resource`.

* feat(kubernetes): fix docs

* chore(dependencies): Autobump korkVersion (spinnaker#1447)

* fix(kubernetes): remove user-facing references to todo(lwander) (spinnaker#1449)

* fix(kubernetes): remove user-facing references to todo(lwander)

* fix(kubernetes): formatting

* test(k8s): Verify propagation of service account name to pod spec. (spinnaker#1450)

* fix(plugins): plugins should be able to reference their own config values (spinnaker#1444)

* fix(halyard): Change deployment to support new Kubernetes API (… (spinnaker#1443)

* chore(core): remove unused jobs feature flag (spinnaker#1451)

* chore(dependencies): Autobump korkVersion (spinnaker#1448)

* refactor(google): Update to latest google credentials style. (spinnaker#1452)

* fix(deployments): Fix sub-service name for HA echo in warning m… (spinnaker#1435)

* feat(slack): Allow configurable slack endpoint (spinnaker#1446)

* chore(dependencies): Autobump korkVersion (spinnaker#1453)

* feat(config): HalconfigDirStruct source of truth, allow override (spinnaker#1454)

* feat(artifacts): add git repo artifact support (spinnaker#1458)

* fix(provider/aws): Support for specifying lifecycle hooks for AWS accounts (spinnaker#1420)

* fix(provider/aws): Support for specifying lifecycle hooks for AWS accounts

* fix(config): fix anonymous Google storage credentials (spinnaker#1462)

* fix(build): Missing Ubuntu image dependency (spinnaker#1464)

* fix(build): `spinnaker` user/group id=1000 in Ubuntu image (spinnaker#1465)

The slim/alpine image uses 1000/1000 as the uid and gid for the `spinnaker` user. Doing the same thing for the Ubuntu image makes it simpler for installers like the Helm chart to use either image variant.

* fix(saml): get saml file path instead of file contents in saml validator (spinnaker#1455)

* fix(saml): get saml file path instead of file contents in saml validator

* remove redundant SecretSessionManager

* fix(artifacts/gitrepo): use Boolean class instead of primitive (spinnaker#1466)

* feat(halyard/localfiles): Support relative local files in hal config (spinnaker#1416)

* feat(localfiles): Support relative local files to hal config home

Usually when referencing local files in main hal config with a relative
path, halyard throws this error:

Problems in Global:
! ERROR Failed to backup user file: default/files/kubeconfig-main

- Failed to generate config.

With this change, relative files will be automatically resolved relative
from hal config home.

* feat(localfiles): Only prefix files in subdirectories of input prefix

* feat(halyard/localfiles): Use getter for hal config directory

* feat(halyard/localfiles): Error on relative files escaping hal home

* feat(localfiles): Normalize path on comparison for removing prefix

* chore(localfiles): Paths for building a path instead of string concat

* chore(localfiles): Save field references to child nodes

* chore(localfiles): Removed {%halconfig-dir%}, moved some code to parser

* chore(localfiles): Support backups made with {%halconfig-dir%}

* chore(localfiles): Support backups made with {%halconfig-dir%}

* chore(localfiles): Using java Path instead of string handling

* chore(localfiles): New FileService for getting file paths and contents

* chore(localfiles): Use FileService for getting files

* chore(dependencies): Autobump korkVersion (spinnaker#1460)

* feat(mergify): Allow OSS approvers to autosubmit (spinnaker#1470)

* chore(dependencies): Autobump korkVersion (spinnaker#1469)

* chore(dependencies): Autobump korkVersion (spinnaker#1471)

* feat(huaweicloud): first commit for huaweicloud (spinnaker#1461)

* feat(huaweicloud): first commit for huaweicloud

    r 3e29b2c feat(huaweicloud): first commit for huaweicloud
    r 14f49c4 feat(huaweicloud): add commands about account

* feat(huaweicloud): add commands of account

    r 3e29b2c feat(huaweicloud): first commit for huaweicloud
    r 14f49c4 feat(huaweicloud): add commands about account

* refactor(huaweicloud): add validator and change the way to input password

* feat(huaweicloud): add commands of bakery

* style(huaweicloud): add missed copyrights

* style(huaweicloud): make code simple

* Revert "feat(huaweicloud): first commit for huaweicloud (spinnaker#1461)" (spinnaker#1473)

This reverts commit d35767d.

* fix(deployments): Fixed k8s manifests templates generating invalid yaml (spinnaker#1456)

manifest templates were adding unnecessary commas when podAnnotations, podLabels, or serviceLabels were supplied causing deployments to fail.

* chore(dependencies): Autobump korkVersion (spinnaker#1475)

* chore(dependencies): Autobump korkVersion (spinnaker#1477)

* feat(huaweicloud): add provider of huaweicloud (spinnaker#1476)

* feat(huaweicloud): first commit for huaweicloud

    r 3e29b2c feat(huaweicloud): first commit for huaweicloud
    r 14f49c4 feat(huaweicloud): add commands about account

* feat(huaweicloud): add commands of account

    r 3e29b2c feat(huaweicloud): first commit for huaweicloud
    r 14f49c4 feat(huaweicloud): add commands about account

* refactor(huaweicloud): add validator and change the way to input password

* feat(huaweicloud): add commands of bakery

* style(huaweicloud): add missed copyrights

* style(huaweicloud): make code simple

* fix(huaweicloud): fix the bakery validate exception

* chore(dependencies): Autobump korkVersion (spinnaker#1478)

* chore(tools): Pulled latest changes from upstream master

* chore(logging): Log validation problems

* fix(validations): Request prototype bean from spring instead of using "new"

Co-authored-by: Michael Plump <plumpy@gmail.com>
Co-authored-by: spinnakerbot <spinbot@spinnaker.io>
Co-authored-by: Scott Frederick <scottyfred@gmail.com>
Co-authored-by: Kathryn Lewis <kathryn.lewis@armory.io>
Co-authored-by: Eric Zimanyi <ezimanyi@google.com>
Co-authored-by: Cameron Motevasselani <cmotevasselani@gmail.com>
Co-authored-by: Loïs Postula <lois@postu.la>
Co-authored-by: Rohit Verma <38323616+rverma-nikiai@users.noreply.github.com>
Co-authored-by: Jammy Louie <jlouie@pivotal.io>
Co-authored-by: Michael Tweten <mtweten@gmail.com>
Co-authored-by: Pierre Delagrave <pdelagrave@pivotal.io>
Co-authored-by: Matthew Sneeden <matthew.sneeden@gmail.com>
Co-authored-by: Jason <mcintoshj@gmail.com>
Co-authored-by: Justin Lee <justin.r.lee@gmail.com>
Co-authored-by: Stacie Graves <stacie.graves@gmail.com>
Co-authored-by: Costi Muraru <costimuraru@gmail.com>
Co-authored-by: Travis Tomsu <ttomsu@google.com>
Co-authored-by: Chris Gruel <chris_gruel@homedepot.com>
Co-authored-by: Derek Miller <8096201+derekmiller@users.noreply.github.com>
Co-authored-by: Julien Breux <julien.breux@gmail.com>
Co-authored-by: Anton Malinskiy <anton@malinskiy.com>
Co-authored-by: Jared Welch <jwelch92@users.noreply.github.com>
Co-authored-by: Lars Wander <lwander@users.noreply.github.com>
Co-authored-by: Matt Duftler <duftler@google.com>
Co-authored-by: Maggie Neterval <mneterval@google.com>
Co-authored-by: Ryuzo Yamamoto <ryuzo.yamamoto@gmail.com>
Co-authored-by: Jorge Dias <jorge@mrdias.com>
Co-authored-by: Nicolas Cohen <ncknt@users.noreply.github.com>
Co-authored-by: zengchen <chenzeng2@huawei.com>
Co-authored-by: Greg North <gregnorth@gmail.com>
german-muzquiz added a commit to armory-io/halyard that referenced this pull request Mar 13, 2020
* fix(config): parse 'oauthScopes' stanzas that were incorrectly written (spinnaker#1376)

* refactor(config): remove a pointless try/catch block

* refactor(tests): remove an unused import

* fix(config): parse 'oauthScopes' stanzas that were incorrectly written

The old version of Lombok used in Halyard <=1.21 didn't copy
@JsonProperty annotations to the generated methods. This means Jackson
was seeing the field as 'oAuthScopes' and the getter/setter as a
separate 'oauthScopes' property. The same data would be written to both
properties, and during parsing whichever came last in the file would be
persisted into the object.

With new versions of Lombok (>=1.18.8), the @JsonProperty annotation is
copied to the bean methods, so the 'oauthScopes' property disappears and
Jackson can no longer parse those old files.

This commit adds some methods to support parsing the files generated by
previous versions of Halyard, but will no longer write out the
incorrect duplicate data.

* chore(copyright): add a missing copyright header

* chore(dependencies): Autobump korkVersion (spinnaker#1375)

* fix(core): Fix reading of external files as binary instead of text (spinnaker#1380)

* feat(secret): decrypt secrets before sending to deck (spinnaker#1379)

* feat(secret): decrypt secrets before sending to deck

* code review changes

* chore(dependencies): Autobump korkVersion (spinnaker#1383)

* fix(build): remove old usage of korkVersion (spinnaker#1385)

* chore(dependencies): Autobump korkVersion (spinnaker#1384)

* chore(build): Update cloudbuild.yaml file (spinnaker#1388)

Remove the $REPO_NAME variable from the cloudbuild.yaml file; this is being used
to decide the name of the image to push which will not always correspond to the
image name. In particular, if we start publishing both alpine and ubuntu images
we'll want the image name to have a suffix reflecting that.

* chore(dependencies): Autobump korkVersion (spinnaker#1389)

* chore(dependencies): Autobump korkVersion (spinnaker#1390)

* feat(plugins): adding halyard commands for plugins (spinnaker#1386)

* feat(plugins): adding halyard commands for plugins

* chore(refactor): use toMap instead of a concurrentMap collector

* feat(notifications): Add Github Status support (spinnaker#1374)

* chore(dependencies): Autobump korkVersion (spinnaker#1392)

* feat(plugins): enable/disable downloading plugins (spinnaker#1393)

* chore(dependencies): Autobump korkVersion (spinnaker#1394)

* chore(dependencies): Autobump korkVersion (spinnaker#1395)

* feat(kubernetes): Support for tolerations (spinnaker#1396)

* fix(kubernetes): Added support for tolerationn

Signed-off-by: rverma-nikiai <rohit.verma@niki.ai>

* feat(kubernetes): Added support for Tolerations

Added support for tolerations

Signed-off-by: rverma-nikiai <rohit.verma@niki.ai>

* feat(kubernetes): Support for tolerations

* fix(kubernetes): Added support for Tolerations, fixed access

* chore(dependencies): Autobump korkVersion (spinnaker#1397)

* feat(artifacts): add feature flag to turn on artifactsRewrite (spinnaker#1398)

* feat(deployments): Update component sizing command to allow container component sizing. (spinnaker#1387)

* feat(deploy/kubernetes): Option to select the image variant to deploy (spinnaker#1401)

* refactor(deploy/kubernetes): Removed duplicated code

* feat(deploy/kubernetes): Option to select the image variant to deploy

Supports `slim` and `ubuntu`, the former being the default.
Ubuntu image supported starting with v1.16.0.

* chore(dependencies): Autobump korkVersion (spinnaker#1403)

* fix(docs): s/Kubenretes/Kubernetes (spinnaker#1402)

* fix(ldap): Fix allowing back blank ldap search base when using search filter (spinnaker#1391)

* chore(dependencies): Autobump korkVersion (spinnaker#1404)

* chore(plugins): rename plugin downloading commands to kebab-case (spinnaker#1408)

* chore(dependencies): Autobump korkVersion (spinnaker#1410)

* refactor(deploy): Adapt to changes in kork-config (spinnaker#1407)

* fix(notifications): fix editing notifications in halyard (spinnaker#1413)

Broken in spinnaker#1374

Closes spinnaker/spinnaker#4834

* chore(dependencies): Autobump korkVersion (spinnaker#1415)

* feat(front50): Support AWS S3 SSE (spinnaker#1399)

* chore(dependencies): Autobump korkVersion (spinnaker#1417)

* chore(dependencies): Autobump korkVersion (spinnaker#1418)

* chore(dependencies): Autobump korkVersion (spinnaker#1419)

* feat(telemetry): adds endpoint and enable settings for stats collection (spinnaker#1406)

* feat(telemetry): adds endpoint and enable settings for telemetry

* chore(dependencies): Autobump korkVersion (spinnaker#1421)

* fix(eks): Halyard doesn't work with new EKS kube config (spinnaker#1382)

Fixes spinnaker/spinnaker#4712

Signed-off-by: Constantin Muraru <cmuraru@adobe.com>

* fix(stats): Replace UUID with ULID as spinnaker instance idententifier (spinnaker#1423)

* feat(secrets): Support SAML metadata as secret (spinnaker#1411)

* chore(dependencies): Autobump korkVersion (spinnaker#1426)

* fix(saml): make email address configurable (spinnaker#1427)

* fix(saml): make email address configurable

* update commands for saml email

* feat(canary): add newrelic as canary service (spinnaker#1422)

* chore(core): Compile using the java compiler (spinnaker#1432)

Only test code is written in groovy, so we never have to worry about
java code depending on groovy code; remove the override that is
causing java source files to be compiled with the groovy compiler.

* fix(kubeconfig): Get contents of local kubeconfig files (spinnaker#1425)

* chore(dependencies): Autobump korkVersion (spinnaker#1433)

* chore(dependencies): Autobump korkVersion (spinnaker#1440)

* feat(plugins): enable plugin config overrides (spinnaker#1439)

* feat(plugins): enable plugin config overrides

* chore(plugins): create getPluginConfigurations in Plugins class

* feat(build): Ubuntu base image support (spinnaker#1438)

* Composing the docker images build by having a shared first stage to build the JAR.
* Release scripts support both default and ubuntu image variants. Fully backward compatible as the existing tagging convention is left untouched, the new ubuntu images have their version tag appended with `-ubuntu`.
* Deleted unused Dockerfile and cloudbuild config files.

* fix(install): fix the problem with JDK 13.0 (spinnaker#1445)

* feat(signalfx): add endpoint, scope and location configuration (spinnaker#1429)

* feat(secrets/gcs): Support for decrypting spinnaker secrets in GCS (spinnaker#1441)

* feat(monitoring): add new relic monitoring daemon config (spinnaker#1442)

* feat(canary): add new relic monitoring daemon config

* feat(monitoring): replace short description for metric store commands

s/authentication method/metric store

* feat(kubernetes): add flag for Kubernetes custom resources (spinnaker#1436)

* feat(kubernetes): add flag for Kubernetes custom resources

Adds flag `--custom-resources` to specify CRDs that should be cached by clouddriver. Defining custom resources here is required for them to be used in patch and delete pipeline stages.

* feat(kubernetes) validation for customResources and allow setting all fields

* Update docs for custom resources flag

* feat(kubernetes): clean up CLI arguments for adding custom resources

Switched from serialized format for setting fields to only allowing adding custom resource when editing an account.

`--spinnaker-kind` and `--versioned` are optional but are not valid arguments without `--add-custom-resource`.

* feat(kubernetes): fix docs

* chore(dependencies): Autobump korkVersion (spinnaker#1447)

* fix(kubernetes): remove user-facing references to todo(lwander) (spinnaker#1449)

* fix(kubernetes): remove user-facing references to todo(lwander)

* fix(kubernetes): formatting

* test(k8s): Verify propagation of service account name to pod spec. (spinnaker#1450)

* fix(plugins): plugins should be able to reference their own config values (spinnaker#1444)

* fix(halyard): Change deployment to support new Kubernetes API (… (spinnaker#1443)

* chore(core): remove unused jobs feature flag (spinnaker#1451)

* chore(dependencies): Autobump korkVersion (spinnaker#1448)

* refactor(google): Update to latest google credentials style. (spinnaker#1452)

* fix(deployments): Fix sub-service name for HA echo in warning m… (spinnaker#1435)

* feat(slack): Allow configurable slack endpoint (spinnaker#1446)

* chore(dependencies): Autobump korkVersion (spinnaker#1453)

* feat(config): HalconfigDirStruct source of truth, allow override (spinnaker#1454)

* feat(artifacts): add git repo artifact support (spinnaker#1458)

* fix(provider/aws): Support for specifying lifecycle hooks for AWS accounts (spinnaker#1420)

* fix(provider/aws): Support for specifying lifecycle hooks for AWS accounts

* fix(config): fix anonymous Google storage credentials (spinnaker#1462)

* fix(build): Missing Ubuntu image dependency (spinnaker#1464)

* fix(build): `spinnaker` user/group id=1000 in Ubuntu image (spinnaker#1465)

The slim/alpine image uses 1000/1000 as the uid and gid for the `spinnaker` user. Doing the same thing for the Ubuntu image makes it simpler for installers like the Helm chart to use either image variant.

* fix(saml): get saml file path instead of file contents in saml validator (spinnaker#1455)

* fix(saml): get saml file path instead of file contents in saml validator

* remove redundant SecretSessionManager

* fix(artifacts/gitrepo): use Boolean class instead of primitive (spinnaker#1466)

* feat(halyard/localfiles): Support relative local files in hal config (spinnaker#1416)

* feat(localfiles): Support relative local files to hal config home

Usually when referencing local files in main hal config with a relative
path, halyard throws this error:

Problems in Global:
! ERROR Failed to backup user file: default/files/kubeconfig-main

- Failed to generate config.

With this change, relative files will be automatically resolved relative
from hal config home.

* feat(localfiles): Only prefix files in subdirectories of input prefix

* feat(halyard/localfiles): Use getter for hal config directory

* feat(halyard/localfiles): Error on relative files escaping hal home

* feat(localfiles): Normalize path on comparison for removing prefix

* chore(localfiles): Paths for building a path instead of string concat

* chore(localfiles): Save field references to child nodes

* chore(localfiles): Removed {%halconfig-dir%}, moved some code to parser

* chore(localfiles): Support backups made with {%halconfig-dir%}

* chore(localfiles): Support backups made with {%halconfig-dir%}

* chore(localfiles): Using java Path instead of string handling

* chore(localfiles): New FileService for getting file paths and contents

* chore(localfiles): Use FileService for getting files

* chore(dependencies): Autobump korkVersion (spinnaker#1460)

* feat(mergify): Allow OSS approvers to autosubmit (spinnaker#1470)

* chore(dependencies): Autobump korkVersion (spinnaker#1469)

* chore(dependencies): Autobump korkVersion (spinnaker#1471)

* feat(huaweicloud): first commit for huaweicloud (spinnaker#1461)

* feat(huaweicloud): first commit for huaweicloud

    r 3e29b2c feat(huaweicloud): first commit for huaweicloud
    r 14f49c4 feat(huaweicloud): add commands about account

* feat(huaweicloud): add commands of account

    r 3e29b2c feat(huaweicloud): first commit for huaweicloud
    r 14f49c4 feat(huaweicloud): add commands about account

* refactor(huaweicloud): add validator and change the way to input password

* feat(huaweicloud): add commands of bakery

* style(huaweicloud): add missed copyrights

* style(huaweicloud): make code simple

* Revert "feat(huaweicloud): first commit for huaweicloud (spinnaker#1461)" (spinnaker#1473)

This reverts commit d35767d.

* fix(deployments): Fixed k8s manifests templates generating invalid yaml (spinnaker#1456)

manifest templates were adding unnecessary commas when podAnnotations, podLabels, or serviceLabels were supplied causing deployments to fail.

* chore(dependencies): Autobump korkVersion (spinnaker#1475)

* chore(dependencies): Autobump korkVersion (spinnaker#1477)

* feat(huaweicloud): add provider of huaweicloud (spinnaker#1476)

* feat(huaweicloud): first commit for huaweicloud

    r 3e29b2c feat(huaweicloud): first commit for huaweicloud
    r 14f49c4 feat(huaweicloud): add commands about account

* feat(huaweicloud): add commands of account

    r 3e29b2c feat(huaweicloud): first commit for huaweicloud
    r 14f49c4 feat(huaweicloud): add commands about account

* refactor(huaweicloud): add validator and change the way to input password

* feat(huaweicloud): add commands of bakery

* style(huaweicloud): add missed copyrights

* style(huaweicloud): make code simple

* fix(huaweicloud): fix the bakery validate exception

* chore(dependencies): Autobump korkVersion (spinnaker#1478)

* chore(dependencies): Autobump korkVersion (spinnaker#1480)

* chore(dependencies): Autobump korkVersion (spinnaker#1481)

* feat(stats): Adds Telemetry validator, which prints a new Info level message that will get printed during all hal config telemetry enable|disable and hal deploy apply invocations (spinnaker#1479)

* chore(dependencies): Autobump korkVersion (spinnaker#1482)

* chore(dependencies): Autobump korkVersion (spinnaker#1483)

* chore(dependencies): Autobump korkVersion (spinnaker#1484)

* feat(halyard): Add support for the new java8 containers (spinnaker#1485)

* feat(halyard): Add support for the new java8 containers

* docs(halyard): update docs

* chore(release): Use the alpine containers instead of openjdk (spinnaker#1486)

The container we had been using hasn't been updated in months. See
spinnaker/spinnaker#5204.

* fix(container): Fix the slim container (spinnaker#1487)

And clean up the Dockerfile a little while I'm in there.

* feat(Artifactory Search): Add new search fields to support multiple reps (spinnaker#1472)

* feat(Artifactory Search): Add new search fields to support multiple repo types

Co-authored-by: Jonathan Haeden<Jonathan.haeden@outlook.com

* Remove field searchPattern as it is resolved based on repoType

* Add repotype to search commands for addd and edit

* Edit repoType field name in cli

* Updating commands reference with repo-type optional value

* Made groupId conditionally required

as the value is not required for Helm type repository

* fix(container): set the spinnaker user to uid 1000 (spinnaker#1488)

You can't specify a username in a k8s securityContext, only a uid. So
the uid 1000 is special and we need to keep the `spinnaker` user with
that ID.

* fix(java11): remove deprecated JVM flags (spinnaker#1489)

-XX:UseCGroupMemoryLimitForHeap was deprecated in Java 8u191. It's
functionality is now enabled by default. -XX:MaxRAMFraction was also
replaced by the (more flexible) -XX:MaxRAMPercentage.
https://www.oracle.com/technetwork/java/javase/8u191-relnotes-5032181.html

Java 8 will still launch with the old flags, but >10 will not.

We've been using Java >8u191 in every service since Spinnaker 1.14.0. So
this version of Halyard will still successfully deploy 1.14.0, but not
1.13.0 or earlier. (Because we we're hardcoding the version of the JDK
in Echo to 8u111 until then, probably accidentally.)

* chore(release): update the containers to Alpine 3.11 (spinnaker#1491)

* chore(dependencies): Autobump korkVersion (spinnaker#1492)

* chore(dependencies): Autobump korkVersion (spinnaker#1494)

* chore(dependencies): Autobump korkVersion (spinnaker#1495)

* chore(dependencies): Autobump korkVersion (spinnaker#1496)

* chore(dependencies): Autobump korkVersion (spinnaker#1497)

* chore(dependencies): Autobump korkVersion (spinnaker#1499)

* chore(dependencies): Autobump korkVersion (spinnaker#1500)

* chore(dependencies): Autobump korkVersion (spinnaker#1503)

* chore(dependencies): Autobump korkVersion (spinnaker#1504)

* chore(dependencies): Autobump korkVersion (spinnaker#1505)

* feat(plugins): able to add plugin repositories (spinnaker#1498)

* feat(plugins): able to add plugin repositories

* chore(plugins): hal configs for plugin repositories match service configs

* chore(dependencies): Autobump korkVersion (spinnaker#1506)

* chore(dependencies): Autobump korkVersion (spinnaker#1508)

* chore(dependencies): Autobump korkVersion (spinnaker#1509)

* config(core): Remove MPTV2 UI feature flag (spinnaker#1510)

* fix(versions): reenable version checking (spinnaker#1511)

This was accidentally removed in spinnaker#936.

* fix(container): leave Python and curl installed (spinnaker#1512)

* fix(kubernetes): Only load kubeconfig if it's a local file (#33) (spinnaker#1507)

* chore(dependencies): Autobump korkVersion (spinnaker#1513)

* feat(build): Enable local Maven repo when detecting SNAPSHOT dependency (spinnaker#1514)

* chore(dependencies): Spring Boot 2.2.4 upgrade

* feat(build): Enable local Maven repo when detecting SNAPSHOT dependency

* chore(dependencies): Autobump korkVersion (spinnaker#1516)

* chore(containers): Upgrade the bundled tools (spinnaker#1515)

* chore(dependencies): Autobump korkVersion (spinnaker#1518)

* chore(dependencies): Autobump korkVersion (spinnaker#1519)

* chore(dependencies): Autobump korkVersion (spinnaker#1521)

* feat(deployment): Overwrite deploy command's timeout value (spinnaker#1502)

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* fix(plugins): Ignore extraneous pluginConfigurations when parsing config file. (spinnaker#1522)

* chore(dependencies): Autobump korkVersion (spinnaker#1523)

* chore(builds): Add GHActions build on PR, master, and release branches (spinnaker#1524)

* feat(provider/tencentcloud): Add TencentCloud account configuration support to Halyard (spinnaker#1501)

* chore(dependencies): Autobump korkVersion (spinnaker#1526)

* chore(dependencies): Autobump korkVersion (spinnaker#1527)

* refactor(ci): Make AbstractAccountCommand reusable (spinnaker#1525)

GoogleCloudBuildAccountCommand directly implements AbstractHasAccountCommand. This is ok currently since
Google Cloud Build is the only CI service that uses account instead of master. However, it blocks adding
new account-based CI service to halyard since a lot of logics need to be duplicated across packages. This
commit is aimming to abstract some common parts for account-based commands which makes adding a new CI
service much easier.

* chore(dependencies): Autobump korkVersion (spinnaker#1529)

* feat(codebuild): Add support for manipulating AWS CodeBuild accounts (spinnaker#1528)

* fix(flags): Revert "config(core): Remove MPTV2 UI feature flag (spinnaker#1510)" (spinnaker#1530)

This reverts commit 759e988.

* chore(dependencies): Autobump korkVersion (spinnaker#1532)

* chore(dependencies): Autobump korkVersion (spinnaker#1533)

* chore(dependencies): Autobump korkVersion (spinnaker#1534)

* chore(dependencies): Autobump korkVersion (spinnaker#1535)

* chore(dependencies): Autobump korkVersion (spinnaker#1536)

* chore(dependencies): Autobump korkVersion (spinnaker#1537)

* feat(plugins): deploy PF4J plugins to orca (spinnaker#1520)

* chore(dependencies): Autobump korkVersion (spinnaker#1540)

* chore(dependencies): Autobump korkVersion (spinnaker#1541)

* feat(kubernetes): Enable TCP probe for containers (spinnaker#1542)

* feat(kubernetes): Enable TCP probe for containers

* fix code readability

* fix not not

* feat(features): add support for Cloud Formation (spinnaker#1493)

* feat(features): add support for Cloud Formation

* name fixes

* name fixes

* fixed documentation

* feat(features): add support for Cloud Formation

* feat(features): add support for Cloud Formation

* feat(features): add support for Cloud Formation

* chore(dependencies): Autobump korkVersion (spinnaker#1544)

* feat(telemetry): add ability to report deploy method (spinnaker#1543)

* feat(telemetry): add ability to report deploy method to "echo" via telemetry

* feat(telemetry): code formatting

* chore(dependencies): Autobump korkVersion (spinnaker#1546)

* fix(gate): apply the JVM flags to gate (spinnaker#1547)

It looks like gate and deck were overriding `buildServiceSettings` just to avoid calling `setAddress`. But then when the JVM flags got added to that method, they both got skipped. Since `deck` doesn't use a JVM, that's no big deal, but for `gate` it's an issue.

Held my nose and went for a minimally invasive change rather than a more holistic cleanup.

* chore(dependencies): Autobump korkVersion (spinnaker#1548)

* feat(kubernetes): prepare for upcoming removal of V1 provider (spinnaker#1549)

* refactor(kubernetes): separate V1 and V2 account validators

* feat(kubernetes): add warning for v1 accounts

* feat(cli): only expose providerVersion for kubernetes accounts

* feat(kubernetes): default new and unspecified accounts to V2

* chore(dependencies): Autobump korkVersion (spinnaker#1555)

* feat(plugins): lays down plugin-manifest for Deck (spinnaker#1539)

* feat(plugins): lays down plugin-manifest for Deck

* chore(style): spotless apply

* fix(plugins): using template for plugin entries for deck

* fix(plugins): corrected filename for plugin-manifest.json

Co-authored-by: Cameron Motevasselani <cmotevasselani@gmail.com>

* chore(dependencies): Autobump korkVersion (spinnaker#1556)

* feat(codebuild): Add support for static credentials (spinnaker#1554)

1. Add an AbstractEditCiCommand class that could be inherited from. For now only codebuild account
command extends this class. There could be more in the future.
2. Mark assume-role and account-id as not required so that the static credentials could be used directly
3. Add an API in halyard daemon to set custom fields for CI providers

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* chore(dependencies): Autobump korkVersion (spinnaker#1557)

* chore(dependencies): Autobump korkVersion (spinnaker#1558)

* chore(dependencies): upgrade commons-collections  version (spinnaker#1545)

* chore(dependencies): Autobump korkVersion (spinnaker#1560)

* chore(dependencies): Autobump korkVersion (spinnaker#1561)

* chore(dependencies): Autobump korkVersion (spinnaker#1562)

Co-authored-by: Travis CI User <travis@example.org>

* chore(dependencies): Autobump korkVersion (spinnaker#1563)

Co-authored-by: Travis CI User <travis@example.org>

* chore(dependencies): Autobump korkVersion (spinnaker#1566)

Co-authored-by: Travis CI User <travis@example.org>

* chore(containers): Upgrade the bundled tools (spinnaker#1568)

* chore(containers): tell curl to fail if it gets an HTTP error

This will prevent errors from going unnoticed as happened with the
missing AWS client.

* chore(containers): Upgrade the bundled tools

* feat(stats): Rename telemetry to stats, enable by default (spinnaker#1565)

* feat(stats): Rename telemetry to stats, enable by default
* fix(stats): Rename TelemetryWrapper to StatsWrapper

* fix(stats): New stats command only available in 1.19+ (spinnaker#1569)

* chore(update): gen-manifests update with oss upstream

* chore(update): code clean up

* chore(update): code clean up

Co-authored-by: Michael Plump <plumpy@google.com>
Co-authored-by: spinnakerbot <spinbot@spinnaker.io>
Co-authored-by: Scott Frederick <sfrederick@pivotal.io>
Co-authored-by: Kathryn Lewis <kathryn.lewis@armory.io>
Co-authored-by: Eric Zimanyi <ezimanyi@google.com>
Co-authored-by: Cameron Motevasselani <cmotevasselani@gmail.com>
Co-authored-by: Loïs Postula <lois@postu.la>
Co-authored-by: Cameron Motevasselani <cameron.motevasselani@armory.io>
Co-authored-by: Rohit Verma <38323616+rverma-nikiai@users.noreply.github.com>
Co-authored-by: Jammy Louie <jlouie@pivotal.io>
Co-authored-by: Michael Tweten <Michael.Tweten@cerner.com>
Co-authored-by: Pierre Delagrave <pdelagrave@pivotal.io>
Co-authored-by: Matthew Sneeden <matthew.sneeden@gmail.com>
Co-authored-by: Jason <jason.mcintosh@armory.io>
Co-authored-by: Justin Lee <justin.r.lee@gmail.com>
Co-authored-by: Stacie Graves <stacie.graves@gmail.com>
Co-authored-by: Costi Muraru <costimuraru@gmail.com>
Co-authored-by: Travis Tomsu <ttomsu@google.com>
Co-authored-by: Chris Gruel <chris_gruel@homedepot.com>
Co-authored-by: Derek Miller <8096201+derekmiller@users.noreply.github.com>
Co-authored-by: German Muzquiz <35276119+german-muzquiz@users.noreply.github.com>
Co-authored-by: Julien Breux <julien.breux@gmail.com>
Co-authored-by: Anton Malinskiy <anton@malinskiy.com>
Co-authored-by: Jared Welch <jwelch92@users.noreply.github.com>
Co-authored-by: Lars Wander <lwander@users.noreply.github.com>
Co-authored-by: Matt Duftler <duftler@google.com>
Co-authored-by: Maggie Neterval <mneterval@google.com>
Co-authored-by: Ryuzo Yamamoto <ryuzo.yamamoto@gmail.com>
Co-authored-by: Jorge Dias <jorge@mrdias.com>
Co-authored-by: Nicolas Cohen <ncknt@users.noreply.github.com>
Co-authored-by: zengchen <chenzeng2@huawei.com>
Co-authored-by: Greg North <gregnorth@gmail.com>
Co-authored-by: Sirisha vadrevu <sirishavadrevu@gmail.com>
Co-authored-by: Louis Jimenez <louisjimenez@google.com>
Co-authored-by: Ryuichi Inagaki <ryuichi.inagaki.24@googlemail.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Co-authored-by: Shengyu Liu <usungu@gmail.com>
Co-authored-by: Kaixiang-AWS <zkaixian@amazon.com>
Co-authored-by: Fernando Guerra <53754439+ferwguerra@users.noreply.github.com>
Co-authored-by: Brandon Powell <brandon.powell@armory.io>
Co-authored-by: asgard-r <56136377+asgard-r@users.noreply.github.com>
Co-authored-by: Travis CI User <travis@example.org>
german-muzquiz added a commit to armory-io/halyard that referenced this pull request May 8, 2020
* chore(build): Update cloudbuild.yaml file (spinnaker#1388)

Remove the $REPO_NAME variable from the cloudbuild.yaml file; this is being used
to decide the name of the image to push which will not always correspond to the
image name. In particular, if we start publishing both alpine and ubuntu images
we'll want the image name to have a suffix reflecting that.

* chore(dependencies): Autobump korkVersion (spinnaker#1389)

* chore(dependencies): Autobump korkVersion (spinnaker#1390)

* feat(plugins): adding halyard commands for plugins (spinnaker#1386)

* feat(plugins): adding halyard commands for plugins

* chore(refactor): use toMap instead of a concurrentMap collector

* feat(notifications): Add Github Status support (spinnaker#1374)

* chore(dependencies): Autobump korkVersion (spinnaker#1392)

* feat(plugins): enable/disable downloading plugins (spinnaker#1393)

* chore(dependencies): Autobump korkVersion (spinnaker#1394)

* chore(dependencies): Autobump korkVersion (spinnaker#1395)

* feat(kubernetes): Support for tolerations (spinnaker#1396)

* fix(kubernetes): Added support for tolerationn

Signed-off-by: rverma-nikiai <rohit.verma@niki.ai>

* feat(kubernetes): Added support for Tolerations

Added support for tolerations

Signed-off-by: rverma-nikiai <rohit.verma@niki.ai>

* feat(kubernetes): Support for tolerations

* fix(kubernetes): Added support for Tolerations, fixed access

* chore(dependencies): Autobump korkVersion (spinnaker#1397)

* feat(artifacts): add feature flag to turn on artifactsRewrite (spinnaker#1398)

* feat(deployments): Update component sizing command to allow container component sizing. (spinnaker#1387)

* feat(deploy/kubernetes): Option to select the image variant to deploy (spinnaker#1401)

* refactor(deploy/kubernetes): Removed duplicated code

* feat(deploy/kubernetes): Option to select the image variant to deploy

Supports `slim` and `ubuntu`, the former being the default.
Ubuntu image supported starting with v1.16.0.

* chore(dependencies): Autobump korkVersion (spinnaker#1403)

* fix(docs): s/Kubenretes/Kubernetes (spinnaker#1402)

* fix(ldap): Fix allowing back blank ldap search base when using search filter (spinnaker#1391)

* chore(dependencies): Autobump korkVersion (spinnaker#1404)

* chore(plugins): rename plugin downloading commands to kebab-case (spinnaker#1408)

* chore(dependencies): Autobump korkVersion (spinnaker#1410)

* refactor(deploy): Adapt to changes in kork-config (spinnaker#1407)

* fix(notifications): fix editing notifications in halyard (spinnaker#1413)

Broken in spinnaker#1374

Closes spinnaker/spinnaker#4834

* chore(dependencies): Autobump korkVersion (spinnaker#1415)

* feat(front50): Support AWS S3 SSE (spinnaker#1399)

* chore(dependencies): Autobump korkVersion (spinnaker#1417)

* chore(dependencies): Autobump korkVersion (spinnaker#1418)

* chore(dependencies): Autobump korkVersion (spinnaker#1419)

* feat(telemetry): adds endpoint and enable settings for stats collection (spinnaker#1406)

* feat(telemetry): adds endpoint and enable settings for telemetry

* chore(dependencies): Autobump korkVersion (spinnaker#1421)

* fix(eks): Halyard doesn't work with new EKS kube config (spinnaker#1382)

Fixes spinnaker/spinnaker#4712

Signed-off-by: Constantin Muraru <cmuraru@adobe.com>

* fix(stats): Replace UUID with ULID as spinnaker instance idententifier (spinnaker#1423)

* feat(secrets): Support SAML metadata as secret (spinnaker#1411)

* chore(dependencies): Autobump korkVersion (spinnaker#1426)

* fix(saml): make email address configurable (spinnaker#1427)

* fix(saml): make email address configurable

* update commands for saml email

* feat(canary): add newrelic as canary service (spinnaker#1422)

* chore(core): Compile using the java compiler (spinnaker#1432)

Only test code is written in groovy, so we never have to worry about
java code depending on groovy code; remove the override that is
causing java source files to be compiled with the groovy compiler.

* fix(kubeconfig): Get contents of local kubeconfig files (spinnaker#1425)

* chore(dependencies): Autobump korkVersion (spinnaker#1433)

* chore(dependencies): Autobump korkVersion (spinnaker#1440)

* feat(plugins): enable plugin config overrides (spinnaker#1439)

* feat(plugins): enable plugin config overrides

* chore(plugins): create getPluginConfigurations in Plugins class

* feat(build): Ubuntu base image support (spinnaker#1438)

* Composing the docker images build by having a shared first stage to build the JAR.
* Release scripts support both default and ubuntu image variants. Fully backward compatible as the existing tagging convention is left untouched, the new ubuntu images have their version tag appended with `-ubuntu`.
* Deleted unused Dockerfile and cloudbuild config files.

* fix(install): fix the problem with JDK 13.0 (spinnaker#1445)

* feat(signalfx): add endpoint, scope and location configuration (spinnaker#1429)

* feat(secrets/gcs): Support for decrypting spinnaker secrets in GCS (spinnaker#1441)

* feat(monitoring): add new relic monitoring daemon config (spinnaker#1442)

* feat(canary): add new relic monitoring daemon config

* feat(monitoring): replace short description for metric store commands

s/authentication method/metric store

* feat(kubernetes): add flag for Kubernetes custom resources (spinnaker#1436)

* feat(kubernetes): add flag for Kubernetes custom resources

Adds flag `--custom-resources` to specify CRDs that should be cached by clouddriver. Defining custom resources here is required for them to be used in patch and delete pipeline stages.

* feat(kubernetes) validation for customResources and allow setting all fields

* Update docs for custom resources flag

* feat(kubernetes): clean up CLI arguments for adding custom resources

Switched from serialized format for setting fields to only allowing adding custom resource when editing an account.

`--spinnaker-kind` and `--versioned` are optional but are not valid arguments without `--add-custom-resource`.

* feat(kubernetes): fix docs

* chore(dependencies): Autobump korkVersion (spinnaker#1447)

* fix(kubernetes): remove user-facing references to todo(lwander) (spinnaker#1449)

* fix(kubernetes): remove user-facing references to todo(lwander)

* fix(kubernetes): formatting

* test(k8s): Verify propagation of service account name to pod spec. (spinnaker#1450)

* fix(plugins): plugins should be able to reference their own config values (spinnaker#1444)

* fix(halyard): Change deployment to support new Kubernetes API (… (spinnaker#1443)

* chore(core): remove unused jobs feature flag (spinnaker#1451)

* chore(dependencies): Autobump korkVersion (spinnaker#1448)

* refactor(google): Update to latest google credentials style. (spinnaker#1452)

* fix(deployments): Fix sub-service name for HA echo in warning m… (spinnaker#1435)

* feat(slack): Allow configurable slack endpoint (spinnaker#1446)

* chore(dependencies): Autobump korkVersion (spinnaker#1453)

* feat(config): HalconfigDirStruct source of truth, allow override (spinnaker#1454)

* feat(artifacts): add git repo artifact support (spinnaker#1458)

* fix(provider/aws): Support for specifying lifecycle hooks for AWS accounts (spinnaker#1420)

* fix(provider/aws): Support for specifying lifecycle hooks for AWS accounts

* fix(config): fix anonymous Google storage credentials (spinnaker#1462)

* fix(build): Missing Ubuntu image dependency (spinnaker#1464)

* fix(build): `spinnaker` user/group id=1000 in Ubuntu image (spinnaker#1465)

The slim/alpine image uses 1000/1000 as the uid and gid for the `spinnaker` user. Doing the same thing for the Ubuntu image makes it simpler for installers like the Helm chart to use either image variant.

* fix(saml): get saml file path instead of file contents in saml validator (spinnaker#1455)

* fix(saml): get saml file path instead of file contents in saml validator

* remove redundant SecretSessionManager

* fix(artifacts/gitrepo): use Boolean class instead of primitive (spinnaker#1466)

* feat(halyard/localfiles): Support relative local files in hal config (spinnaker#1416)

* feat(localfiles): Support relative local files to hal config home

Usually when referencing local files in main hal config with a relative
path, halyard throws this error:

Problems in Global:
! ERROR Failed to backup user file: default/files/kubeconfig-main

- Failed to generate config.

With this change, relative files will be automatically resolved relative
from hal config home.

* feat(localfiles): Only prefix files in subdirectories of input prefix

* feat(halyard/localfiles): Use getter for hal config directory

* feat(halyard/localfiles): Error on relative files escaping hal home

* feat(localfiles): Normalize path on comparison for removing prefix

* chore(localfiles): Paths for building a path instead of string concat

* chore(localfiles): Save field references to child nodes

* chore(localfiles): Removed {%halconfig-dir%}, moved some code to parser

* chore(localfiles): Support backups made with {%halconfig-dir%}

* chore(localfiles): Support backups made with {%halconfig-dir%}

* chore(localfiles): Using java Path instead of string handling

* chore(localfiles): New FileService for getting file paths and contents

* chore(localfiles): Use FileService for getting files

* chore(dependencies): Autobump korkVersion (spinnaker#1460)

* feat(mergify): Allow OSS approvers to autosubmit (spinnaker#1470)

* chore(dependencies): Autobump korkVersion (spinnaker#1469)

* chore(dependencies): Autobump korkVersion (spinnaker#1471)

* feat(huaweicloud): first commit for huaweicloud (spinnaker#1461)

* feat(huaweicloud): first commit for huaweicloud

    r 3e29b2c feat(huaweicloud): first commit for huaweicloud
    r 14f49c4 feat(huaweicloud): add commands about account

* feat(huaweicloud): add commands of account

    r 3e29b2c feat(huaweicloud): first commit for huaweicloud
    r 14f49c4 feat(huaweicloud): add commands about account

* refactor(huaweicloud): add validator and change the way to input password

* feat(huaweicloud): add commands of bakery

* style(huaweicloud): add missed copyrights

* style(huaweicloud): make code simple

* Revert "feat(huaweicloud): first commit for huaweicloud (spinnaker#1461)" (spinnaker#1473)

This reverts commit d35767d.

* fix(deployments): Fixed k8s manifests templates generating invalid yaml (spinnaker#1456)

manifest templates were adding unnecessary commas when podAnnotations, podLabels, or serviceLabels were supplied causing deployments to fail.

* chore(dependencies): Autobump korkVersion (spinnaker#1475)

* chore(dependencies): Autobump korkVersion (spinnaker#1477)

* feat(huaweicloud): add provider of huaweicloud (spinnaker#1476)

* feat(huaweicloud): first commit for huaweicloud

    r 3e29b2c feat(huaweicloud): first commit for huaweicloud
    r 14f49c4 feat(huaweicloud): add commands about account

* feat(huaweicloud): add commands of account

    r 3e29b2c feat(huaweicloud): first commit for huaweicloud
    r 14f49c4 feat(huaweicloud): add commands about account

* refactor(huaweicloud): add validator and change the way to input password

* feat(huaweicloud): add commands of bakery

* style(huaweicloud): add missed copyrights

* style(huaweicloud): make code simple

* fix(huaweicloud): fix the bakery validate exception

* chore(dependencies): Autobump korkVersion (spinnaker#1478)

* chore(dependencies): Autobump korkVersion (spinnaker#1480)

* chore(dependencies): Autobump korkVersion (spinnaker#1481)

* feat(stats): Adds Telemetry validator, which prints a new Info level message that will get printed during all hal config telemetry enable|disable and hal deploy apply invocations (spinnaker#1479)

* chore(dependencies): Autobump korkVersion (spinnaker#1482)

* chore(dependencies): Autobump korkVersion (spinnaker#1483)

* chore(dependencies): Autobump korkVersion (spinnaker#1484)

* feat(halyard): Add support for the new java8 containers (spinnaker#1485)

* feat(halyard): Add support for the new java8 containers

* docs(halyard): update docs

* chore(release): Use the alpine containers instead of openjdk (spinnaker#1486)

The container we had been using hasn't been updated in months. See
spinnaker/spinnaker#5204.

* fix(container): Fix the slim container (spinnaker#1487)

And clean up the Dockerfile a little while I'm in there.

* feat(Artifactory Search): Add new search fields to support multiple reps (spinnaker#1472)

* feat(Artifactory Search): Add new search fields to support multiple repo types

Co-authored-by: Jonathan Haeden<Jonathan.haeden@outlook.com

* Remove field searchPattern as it is resolved based on repoType

* Add repotype to search commands for addd and edit

* Edit repoType field name in cli

* Updating commands reference with repo-type optional value

* Made groupId conditionally required

as the value is not required for Helm type repository

* fix(container): set the spinnaker user to uid 1000 (spinnaker#1488)

You can't specify a username in a k8s securityContext, only a uid. So
the uid 1000 is special and we need to keep the `spinnaker` user with
that ID.

* fix(java11): remove deprecated JVM flags (spinnaker#1489)

-XX:UseCGroupMemoryLimitForHeap was deprecated in Java 8u191. It's
functionality is now enabled by default. -XX:MaxRAMFraction was also
replaced by the (more flexible) -XX:MaxRAMPercentage.
https://www.oracle.com/technetwork/java/javase/8u191-relnotes-5032181.html

Java 8 will still launch with the old flags, but >10 will not.

We've been using Java >8u191 in every service since Spinnaker 1.14.0. So
this version of Halyard will still successfully deploy 1.14.0, but not
1.13.0 or earlier. (Because we we're hardcoding the version of the JDK
in Echo to 8u111 until then, probably accidentally.)

* chore(release): update the containers to Alpine 3.11 (spinnaker#1491)

* chore(dependencies): Autobump korkVersion (spinnaker#1492)

* chore(dependencies): Autobump korkVersion (spinnaker#1494)

* chore(dependencies): Autobump korkVersion (spinnaker#1495)

* chore(dependencies): Autobump korkVersion (spinnaker#1496)

* chore(dependencies): Autobump korkVersion (spinnaker#1497)

* chore(dependencies): Autobump korkVersion (spinnaker#1499)

* chore(dependencies): Autobump korkVersion (spinnaker#1500)

* chore(dependencies): Autobump korkVersion (spinnaker#1503)

* chore(dependencies): Autobump korkVersion (spinnaker#1504)

* chore(dependencies): Autobump korkVersion (spinnaker#1505)

* feat(plugins): able to add plugin repositories (spinnaker#1498)

* feat(plugins): able to add plugin repositories

* chore(plugins): hal configs for plugin repositories match service configs

* chore(dependencies): Autobump korkVersion (spinnaker#1506)

* chore(dependencies): Autobump korkVersion (spinnaker#1508)

* chore(dependencies): Autobump korkVersion (spinnaker#1509)

* config(core): Remove MPTV2 UI feature flag (spinnaker#1510)

* fix(versions): reenable version checking (spinnaker#1511)

This was accidentally removed in spinnaker#936.

* fix(container): leave Python and curl installed (spinnaker#1512)

* fix(kubernetes): Only load kubeconfig if it's a local file (#33) (spinnaker#1507)

* chore(dependencies): Autobump korkVersion (spinnaker#1513)

* feat(build): Enable local Maven repo when detecting SNAPSHOT dependency (spinnaker#1514)

* chore(dependencies): Spring Boot 2.2.4 upgrade

* feat(build): Enable local Maven repo when detecting SNAPSHOT dependency

* chore(dependencies): Autobump korkVersion (spinnaker#1516)

* chore(containers): Upgrade the bundled tools (spinnaker#1515)

* chore(dependencies): Autobump korkVersion (spinnaker#1518)

* chore(dependencies): Autobump korkVersion (spinnaker#1519)

* chore(dependencies): Autobump korkVersion (spinnaker#1521)

* feat(deployment): Overwrite deploy command's timeout value (spinnaker#1502)

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* fix(plugins): Ignore extraneous pluginConfigurations when parsing config file. (spinnaker#1522)

* chore(dependencies): Autobump korkVersion (spinnaker#1523)

* chore(builds): Add GHActions build on PR, master, and release branches (spinnaker#1524)

* feat(provider/tencentcloud): Add TencentCloud account configuration support to Halyard (spinnaker#1501)

* chore(dependencies): Autobump korkVersion (spinnaker#1526)

* chore(dependencies): Autobump korkVersion (spinnaker#1527)

* refactor(ci): Make AbstractAccountCommand reusable (spinnaker#1525)

GoogleCloudBuildAccountCommand directly implements AbstractHasAccountCommand. This is ok currently since
Google Cloud Build is the only CI service that uses account instead of master. However, it blocks adding
new account-based CI service to halyard since a lot of logics need to be duplicated across packages. This
commit is aimming to abstract some common parts for account-based commands which makes adding a new CI
service much easier.

* chore(dependencies): Autobump korkVersion (spinnaker#1529)

* feat(codebuild): Add support for manipulating AWS CodeBuild accounts (spinnaker#1528)

* fix(flags): Revert "config(core): Remove MPTV2 UI feature flag (spinnaker#1510)" (spinnaker#1530)

This reverts commit 759e988.

* chore(dependencies): Autobump korkVersion (spinnaker#1532)

* chore(dependencies): Autobump korkVersion (spinnaker#1533)

* chore(dependencies): Autobump korkVersion (spinnaker#1534)

* chore(dependencies): Autobump korkVersion (spinnaker#1535)

* chore(dependencies): Autobump korkVersion (spinnaker#1536)

* chore(dependencies): Autobump korkVersion (spinnaker#1537)

* feat(plugins): deploy PF4J plugins to orca (spinnaker#1520)

* chore(dependencies): Autobump korkVersion (spinnaker#1540)

* chore(dependencies): Autobump korkVersion (spinnaker#1541)

* feat(kubernetes): Enable TCP probe for containers (spinnaker#1542)

* feat(kubernetes): Enable TCP probe for containers

* fix code readability

* fix not not

* feat(features): add support for Cloud Formation (spinnaker#1493)

* feat(features): add support for Cloud Formation

* name fixes

* name fixes

* fixed documentation

* feat(features): add support for Cloud Formation

* feat(features): add support for Cloud Formation

* feat(features): add support for Cloud Formation

* chore(dependencies): Autobump korkVersion (spinnaker#1544)

* feat(telemetry): add ability to report deploy method (spinnaker#1543)

* feat(telemetry): add ability to report deploy method to "echo" via telemetry

* feat(telemetry): code formatting

* chore(dependencies): Autobump korkVersion (spinnaker#1546)

* fix(gate): apply the JVM flags to gate (spinnaker#1547)

It looks like gate and deck were overriding `buildServiceSettings` just to avoid calling `setAddress`. But then when the JVM flags got added to that method, they both got skipped. Since `deck` doesn't use a JVM, that's no big deal, but for `gate` it's an issue.

Held my nose and went for a minimally invasive change rather than a more holistic cleanup.

* chore(dependencies): Autobump korkVersion (spinnaker#1548)

* feat(kubernetes): prepare for upcoming removal of V1 provider (spinnaker#1549)

* refactor(kubernetes): separate V1 and V2 account validators

* feat(kubernetes): add warning for v1 accounts

* feat(cli): only expose providerVersion for kubernetes accounts

* feat(kubernetes): default new and unspecified accounts to V2

* chore(dependencies): Autobump korkVersion (spinnaker#1555)

* feat(plugins): lays down plugin-manifest for Deck (spinnaker#1539)

* feat(plugins): lays down plugin-manifest for Deck

* chore(style): spotless apply

* fix(plugins): using template for plugin entries for deck

* fix(plugins): corrected filename for plugin-manifest.json

Co-authored-by: Cameron Motevasselani <cmotevasselani@gmail.com>

* chore(dependencies): Autobump korkVersion (spinnaker#1556)

* feat(codebuild): Add support for static credentials (spinnaker#1554)

1. Add an AbstractEditCiCommand class that could be inherited from. For now only codebuild account
command extends this class. There could be more in the future.
2. Mark assume-role and account-id as not required so that the static credentials could be used directly
3. Add an API in halyard daemon to set custom fields for CI providers

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* chore(dependencies): Autobump korkVersion (spinnaker#1557)

* chore(dependencies): Autobump korkVersion (spinnaker#1558)

* chore(dependencies): upgrade commons-collections  version (spinnaker#1545)

* chore(dependencies): Autobump korkVersion (spinnaker#1560)

* chore(dependencies): Autobump korkVersion (spinnaker#1561)

* chore(dependencies): Autobump korkVersion (spinnaker#1562)

Co-authored-by: Travis CI User <travis@example.org>

* chore(dependencies): Autobump korkVersion (spinnaker#1563)

Co-authored-by: Travis CI User <travis@example.org>

* chore(dependencies): Autobump korkVersion (spinnaker#1566)

Co-authored-by: Travis CI User <travis@example.org>

* chore(containers): Upgrade the bundled tools (spinnaker#1568)

* chore(containers): tell curl to fail if it gets an HTTP error

This will prevent errors from going unnoticed as happened with the
missing AWS client.

* chore(containers): Upgrade the bundled tools

* feat(stats): Rename telemetry to stats, enable by default (spinnaker#1565)

* feat(stats): Rename telemetry to stats, enable by default
* fix(stats): Rename TelemetryWrapper to StatsWrapper

* fix(stats): New stats command only available in 1.19+ (spinnaker#1569)

* chore(dependencies): Autobump korkVersion (spinnaker#1570)

Co-authored-by: Cameron Fieber <cfieber@netflix.com>

* chore(dependencies): Autobump korkVersion (spinnaker#1571)

Co-authored-by: Travis CI User <travis@example.org>

* feat(k8s/deploy): Add custom health check to service-settings (spinnaker#1572)

* feat(k8s/deploy): Add custom health check to service-settings.

Need the ability to override the default commands created and populated
in the Deployments readinessprobe. In our use case mTLS has been enabled
and we need a way to modify the readiness probe in each service so that
you can pass in the client certificate.

By adding this functionality Halyard can support a much wider array of potential
configurations for health checks for cases where a simple check of /health might not
be desirable.

* Update var to the correct generic type

* fix(k8s/deploy): Update var to the correct generic type

* chore(fix/style): ran spotlessJava to fix style issues

* chore(dependencies): Autobump korkVersion (spinnaker#1573)

Co-authored-by: runner <runner@fv-az51>

* chore(dependencies): Autobump korkVersion (spinnaker#1574)

Co-authored-by: runner <runner@fv-az50>

* chore(dependencies): Autobump korkVersion (spinnaker#1575)

Co-authored-by: runner <runner@fv-az117.internal.cloudapp.net>

* chore(dependencies): Autobump korkVersion (spinnaker#1576)

Co-authored-by: runner <runner@fv-az76>

* chore(dependencies): Autobump korkVersion (spinnaker#1577)

Co-authored-by: runner <runner@fv-az51>

* feat(build): Remove TravisCI and replace with GitHub Actions (spinnaker#1578)

* chore(build): Remove init-publish script (spinnaker#1579)

* Revert "chore(build): Remove init-publish script (spinnaker#1579)" (spinnaker#1580)

This reverts commit fd2ef27.

* fix(config): Ignore any existing `plugins` stanzas. (spinnaker#1583)

Slack is littered with people having this issue. It looks like this was added in halyard 1.23 on 8/27/2019. So anyone with a config after that will have this issue.

* chore(mergify): release-* branches require release manager approval (spinnaker#1584)

The mergify config currently doesn't distinguish between merging to master and
merging to a release branch.  It currently never merges to release branches
because mergify doesn't have permission to merge to these branches (due to
branch protection rules).

I don't want to give mergify that permission without updating the config file
here, as then it would merge to release branches after any approval, whereas we
only want to merge to release branches if a PR is approved by a release manager.

This updates the mergify config to scope the existing rules to only apply to
the master branch, and adds a new rule to merge to release branches upon
approval by a release manager.

Because the 1.17 branch (and likely the 1.18 branch in some repos) is still
exclusively using Travis CI instead of github actions, also add a rule the
merges if Travis CI passes to account for these branches. This rule can be
deleted once all of the active branches in the repo are using Github actions.

Co-authored-by: Michael Plump <plumpy@google.com>

* chore(dependencies): Autobump korkVersion (spinnaker#1585)

Co-authored-by: runner <runner@fv-az33>

* chore(dependencies): Autobump korkVersion (spinnaker#1586)

Co-authored-by: runner <runner@fv-az51.internal.cloudapp.net>

* fix(plugins): fix plugins-manifest.json  (spinnaker#1564)

* fix(plugins): changing plugin-manifest.js to .json file type

* fix(plugins): remove comments from json file, handle multiple plugins

* feat(plugins): add plugins to all services (spinnaker#1559)

* feat(plugins): add plugins to all services

* refactor(plugins): remove introspection

* refactor(plugins): change Boolean to boolean

* chore(dependencies): Autobump korkVersion (spinnaker#1587)

Co-authored-by: runner <runner@fv-az118.internal.cloudapp.net>

* chore(dependencies): Autobump korkVersion (spinnaker#1588)

Co-authored-by: runner <runner@fv-az51>

* chore(gha): don't run the GHA build when pushing to a fork (spinnaker#1589)

* fix(plugins): Revert add plugins to all services (spinnaker#1559) (spinnaker#1590)

This change breaks deploying any version of Spinnaker <= 1.18
using Halyard, so is being reverted.

This reverts commit 4ed4d26.

* chore(dependencies): Autobump korkVersion (spinnaker#1591)

Co-authored-by: runner <runner@fv-az51>

* chore(dependencies): Autobump korkVersion (spinnaker#1592)

Co-authored-by: runner <runner@fv-az51>

* chore(dependencies): Autobump korkVersion (spinnaker#1593)

Co-authored-by: runner <runner@fv-az51>

* chore(dependencies): Autobump korkVersion (spinnaker#1595)

Co-authored-by: runner <runner@fv-az51>

* feat(plugins): add plugins to all services (spinnaker#1594)

* feat(plugins): add plugins to all services

* fix(regression): update version check to handle non-semver releases

* fix(plugins): do not deploy to kayenta until 1.20.0

* fix(container): restore openssl to alpine image (spinnaker#1596)

removed by spinnaker@43dfc67

In addition to putting back something that was there previously, openssl is in the ubuntu
container, so let's have it here as well.

Co-authored-by: Byron David <david.byron@avast.com>

* chore(dependencies): Autobump korkVersion (spinnaker#1599)

Co-authored-by: runner <runner@fv-az50>

* fix(daemon): Don't try to kill daemon created by another user (spinnaker#1600)

Currently if the Halyard daemon was created by another user, we
kill it and try to start one of our own (likely failing as we
probably don't have permission to kill it).

This is because we look up the PID in the pid file, then try to see
if the process exists with 'ps' but don't pass the '-e' flag to get
all processes (including those created by other users). This is
particularly important given that the Halyard install process specifically
asks you to specify a user with which to run Halyard.

* chore(build): upgrade spinnaker gradle plugin (spinnaker#1601)

* chore(build): move spinnaker library versions out to gradle.properties

* chore(build): upgrade spinnaker gradle plugin

* chore(build): enable the spinnaker project plugin (spinnaker#1602)

Whoops, missed this part that used to be in init-publish.gradle.

* chore(mergify): if an autobump fails, request a review (spinnaker#1603)

* chore(deps): bump internal spinnaker dependencies (spinnaker#1604)

I'll wire all of these up to the bumpdeps action, but I'd like to test these larger jumps first to make sure they go okay...

* chore(dependencies): Autobump spinnakerGradleVersion (spinnaker#1605)

Co-authored-by: root <root@7c2d69cf985a>

* chore(mergify): autobump reviews should go to oss-approvers (spinnaker#1606)

* chore(containers): Make Dockerfiles work with buildtool's containers.yml (spinnaker#1607)

* chore(gradle): Upgrade gradlew to 5.6.4

* chore(containers): Make Dockerfiles work with buildtool's containers.yml

* chore(release): remove jenkins build scripts

* chore(java11): Compile with Java 11 (but targeting Java 8) (spinnaker#1608)

* chore(java11): Compile with Java 11 (but targeting Java 8)

* chore(java11): Fix compilation for developers using a Java 11 JDK

* chore(java11): Use a Java 11 JRE

* chore(dependencies): Autobump korkVersion (spinnaker#1609)

Co-authored-by: root <root@630f71d41ecb>

* chore(dependencies): Autobump korkVersion (spinnaker#1610)

Co-authored-by: root <root@9be1526fc31e>

* chore(dependencies): Autobump korkVersion (spinnaker#1611)

Co-authored-by: root <root@3bbaae2b3f97>

* chore(dependencies): Autobump korkVersion (spinnaker#1612)

Co-authored-by: root <root@60135c639e6f>

* chore(dependencies): Autobump spinnakerGradleVersion (spinnaker#1613)

Co-authored-by: root <root@6891b1263a18>

* fix(publishing): No longer need to change ACL on halyard artifact since the whole bucket is public (spinnaker#1614)

* feat(cli): remove unused appengine feature flag (spinnaker#1615)

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* chore(dependencies): Autobump spinnakerGradleVersion (spinnaker#1616)

Co-authored-by: root <root@458842d3571f>

* chore(dependencies): Autobump korkVersion (spinnaker#1617)

Co-authored-by: root <root@2e5c1c42d060>

* chore(dependencies): Autobump spinnakerGradleVersion (spinnaker#1621)

Co-authored-by: root <root@e7992a1c49ce>

* chore(dependencies): Autobump korkVersion (spinnaker#1622)

Co-authored-by: root <root@18a36aa4866f>

* feat(artifacts): remove artifacts and artifactsRewrite feature flags (spinnaker#1620)

Related to: https://github.com/spinnaker/governance/blob/master/rfc/legacy_artifacts_ui_removal.md

Now that the `artifacts` and `artifactsRewrite` flags are [removed from Deck](spinnaker/deck#8184) in preparation for release 1.20, let's remove their corresponding `hal` commands and provide a message for users deploying >= 1.20 that these fields are no longer necessary.

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* chore(dependencies): Autobump fiatVersion (spinnaker#1624)

Co-authored-by: root <root@9c300884da21>

* chore(dependencies): Autobump korkVersion (spinnaker#1625)

Co-authored-by: root <root@607dfd992c8d>

* chore(dependencies): Autobump korkVersion (spinnaker#1627)

Co-authored-by: root <root@4da054c07e9b>

* chore(build): update to newer spinnaker project plugin (spinnaker#1626)

updates to gradle 6.3

updates github actions workflows for new release flags

* chore(dependencies): Autobump spinnakerGradleVersion (spinnaker#1628)

Co-authored-by: root <root@27f6a48b6497>

* feat(cli): remove Travis, Wercker, Gremlin, and InfrastructureStages feature flags (spinnaker#1619)

* feat(cli): remove Travis feature flag

* feat(cli): remove Wercker feature flag

* feat(cli): remove Gremlin feature flag

* feat(cli): remove infrastructureStages feature flag

* chore(dependencies): Autobump spinnakerGradleVersion (spinnaker#1629)

Co-authored-by: root <root@4d3736916f82>

* chore(dependencies): Autobump spinnakerGradleVersion (spinnaker#1632)

Co-authored-by: root <root@7cfcb65d82e3>

* fix(containers): Add retry to Docker containers downloading kubectl (spinnaker#1633)

* fix(build): use bom for kubernetes-client version

removes explicit version opinion which was causing the build to blow up
in some dependency resolution cases (:halyard-web:depInsight
--configuration runtimeClasspath --dependency kork-core)

also was causing the transitives of kubernetes-client not to end up in
the application/deb

* chore(build): gradle build cleanup

removes unnecessary application of java plugin, we apply java-library to all subprojects
removes unnecessary application of protobuf plugin in halyard-web
removes reference to compile scope, uses implementation scope instead

* chore(dependencies): Autobump spinnakerGradleVersion (spinnaker#1635)

Co-authored-by: root <root@0e23aba3091b>

* chore(dependencies): Autobump clouddriverVersion (spinnaker#1637)

Co-authored-by: root <root@35bcda70644a>

* feat(docs): document poor performance of sortTagsByDate flag (spinnaker#1639)

* chore(dependencies): Autobump spinnakerGradleVersion (spinnaker#1641)

Co-authored-by: root <root@7c412b00885f>

* chore(dependencies): Autobump clouddriverVersion (spinnaker#1642)

Co-authored-by: root <root@ffb573cc3eb2>

* fix(google): Update constructors to account for retry changes (spinnaker#1640)

* fix(google): Update constructors to account for retry changes

The changes to the retry logic updated some fields from Long to
int (because we won't be waiting 24 days between retries); this
commit just updates the places we called them in Halyard to pass
an int.

* chore(dependencies): Bump front50 version

* fix(versions): Use thread safe yaml parser (spinnaker#1644)

* feat(telemetry): code formatting

* feat(telemetry): code formatting

* fix(versions): Use thread safe yaml parser (#39)

Co-authored-by: Cristhian Castaneda <cristhian.castaneda@armory.io>

* fix(cli): replace artifacts commands (spinnaker#1645)

* chore(dependencies): Autobump korkVersion (spinnaker#1647)

Co-authored-by: root <root@7395642f9bee>

* chore(dependencies): Autobump korkVersion (spinnaker#1648)

Co-authored-by: root <root@2b09fc3a4455>

* chore(plugins): remove `uiResourceLocation` plugin config parameter (spinnaker#1638)

Co-authored-by: Cameron Motevasselani <cmotevasselani@gmail.com>

* chore(dependencies): Autobump korkVersion (spinnaker#1650)

Co-authored-by: root <root@94827c35f5fd>

* chore(dependencies): Autobump spinnakerGradleVersion (spinnaker#1651)

Co-authored-by: root <root@3ba87f91c30c>

* fix(daemon): Fix startup failure by reverting incorrect ps usage (spinnaker#1653)

I'm not sure what I was thinking with this original PR; adding the
-e flag will return all processes regardless of PID, and is not
necessary when passing a PID.

This is causing halyard to fail to startup because we think that the
daemon is always running.

This reverts commit 4a686e9.

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* chore(dependencies): Autobump korkVersion (spinnaker#1652)

Co-authored-by: root <root@78c161617790>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* fix(cli): replace gremlin commands for 1.18 and 1.19 compatibility (spinnaker#1655)

* fix(local-git): remove the Java version check from Halyard local-git deployment (spinnaker#1658)

I suppose I could put in something to check for Java 11, but only looking at the version of java in your $PATH seems like a pretty naive way to go about doing this check, since there are myriad ways you could have a JDK configured for Gradle.

* chore(dependencies): Autobump korkVersion (spinnaker#1659)

Co-authored-by: root <root@724dabba6269>

* chore(dependencies): Autobump korkVersion (spinnaker#1661)

Co-authored-by: root <root@46a3f162f32d>

* feat(build): adds project properties for composite builds. (spinnaker#1660)

This adds flags for the related projects that we bring in
as dependencies, to enable referencing the related project
as a composite build via gradle.

This method of enabling composite builds seems to work
significantly better with IntelliJ. (As opposed to
importing multiple projects into the IDE and configuring
the composite relationship after the fact)

This holds the opinion that all the projects are checked
out in the same parent directory, and can be found at
`'../<projectName>'` relative to this project.

To enable a composite reference to a project, set the
project property `'<projectName>Composite=true'`.

This can be done either as
* a command line flag, e.g. `-PkorkComposite=true`
* a project property via gradle.properties
* a global project property via ~/.gradle/gradle.properties

* feat(boms): Change default dockerRegistry to GAR (spinnaker#1657)

* fix(releases): Fix minor typos in promotion script (spinnaker#1663)

* chore(dependencies): Autobump korkVersion (spinnaker#1664)

Co-authored-by: root <root@d5125df9eea4>

* chore(dependencies): Autobump spinnakerGradleVersion (spinnaker#1665)

Co-authored-by: root <root@c12360e2f602>

* chore(dependencies): Autobump korkVersion (spinnaker#1666)

Co-authored-by: root <root@1848c4113575>

* chore(dependencies): Autobump korkVersion (spinnaker#1667)

Co-authored-by: root <root@b0fe386ef528>

* chore(build): gradle 6.4 (spinnaker#1668)

* Merge branch 'master' of github.com:spinnaker/halyard into feature/publish-artifactory

� Conflicts:
�	.mergify.yml
�	Dockerfile.compile
�	Dockerfile.local
�	Dockerfile.slim
�	Dockerfile.ubuntu
�	build.gradle
�	docs/commands.md
�	gradle.properties
�	halyard-cli/src/main/java/com/netflix/spinnaker/halyard/cli/command/v1/ConfigCommand.java
�	halyard-cli/src/main/java/com/netflix/spinnaker/halyard/cli/command/v1/config/EditFeaturesCommand.java
�	halyard-cli/src/main/java/com/netflix/spinnaker/halyard/cli/command/v1/plugins/AddPluginCommand.java
�	halyard-cli/src/main/java/com/netflix/spinnaker/halyard/cli/command/v1/plugins/EditPluginCommand.java
�	halyard-cli/src/main/java/com/netflix/spinnaker/halyard/cli/services/v1/Daemon.java
�	halyard-config/src/main/java/com/netflix/spinnaker/halyard/config/config/v1/HalconfigDirectoryStructure.java
�	halyard-config/src/main/java/com/netflix/spinnaker/halyard/config/model/v1/node/DeploymentConfiguration.java
�	halyard-config/src/main/java/com/netflix/spinnaker/halyard/config/model/v1/node/Features.java
�	halyard-config/src/main/java/com/netflix/spinnaker/halyard/config/model/v1/plugins/Plugin.java
�	halyard-config/src/main/java/com/netflix/spinnaker/halyard/config/services/v1/FileService.java
�	halyard-config/src/test/groovy/com/netflix/spinnaker/halyard/config/model/v1/ExtensibilitySpec.groovy
�	halyard-deploy/src/main/java/com/netflix/spinnaker/halyard/deploy/services/v1/GenerateService.java
�	halyard-deploy/src/main/java/com/netflix/spinnaker/halyard/deploy/spinnaker/v1/profile/deck/DeckProfileFactory.java
�	halyard-deploy/src/main/java/com/netflix/spinnaker/halyard/deploy/spinnaker/v1/service/KubernetesSettings.java
�	halyard-deploy/src/main/java/com/netflix/spinnaker/halyard/deploy/spinnaker/v1/service/distributed/kubernetes/v2/KubernetesV2RedisService.java
�	halyard-deploy/src/main/java/com/netflix/spinnaker/halyard/deploy/spinnaker/v1/service/distributed/kubernetes/v2/KubernetesV2Service.java
�	release/docker.sh
�	release/promote.sh
�	release/publish.sh

* chore(release): Refactored version calculation to function

* chore(release): Build on github

* chore(release): Artifactory credentials

Co-authored-by: Eric Zimanyi <ezimanyi@google.com>
Co-authored-by: spinnakerbot <spinbot@spinnaker.io>
Co-authored-by: Cameron Motevasselani <cmotevasselani@gmail.com>
Co-authored-by: Loïs Postula <lois@postu.la>
Co-authored-by: Cameron Motevasselani <cameron.motevasselani@armory.io>
Co-authored-by: Rohit Verma <38323616+rverma-nikiai@users.noreply.github.com>
Co-authored-by: Jammy Louie <jlouie@pivotal.io>
Co-authored-by: Michael Tweten <Michael.Tweten@cerner.com>
Co-authored-by: Pierre Delagrave <pdelagrave@pivotal.io>
Co-authored-by: Matthew Sneeden <matthew.sneeden@gmail.com>
Co-authored-by: Jason <jason.mcintosh@armory.io>
Co-authored-by: Scott Frederick <sfrederick@pivotal.io>
Co-authored-by: Michael Plump <plumpy@google.com>
Co-authored-by: Justin Lee <justin.r.lee@gmail.com>
Co-authored-by: Stacie Graves <stacie.graves@gmail.com>
Co-authored-by: Costi Muraru <costimuraru@gmail.com>
Co-authored-by: Travis Tomsu <ttomsu@google.com>
Co-authored-by: Kathryn Lewis <kathryn.lewis@armory.io>
Co-authored-by: Chris Gruel <chris_gruel@homedepot.com>
Co-authored-by: Derek Miller <8096201+derekmiller@users.noreply.github.com>
Co-authored-by: Julien Breux <julien.breux@gmail.com>
Co-authored-by: Anton Malinskiy <anton@malinskiy.com>
Co-authored-by: Jared Welch <jwelch92@users.noreply.github.com>
Co-authored-by: Lars Wander <lwander@users.noreply.github.com>
Co-authored-by: Matt Duftler <duftler@google.com>
Co-authored-by: Maggie Neterval <mneterval@google.com>
Co-authored-by: Ryuzo Yamamoto <ryuzo.yamamoto@gmail.com>
Co-authored-by: Jorge Dias <jorge@mrdias.com>
Co-authored-by: Nicolas Cohen <ncknt@users.noreply.github.com>
Co-authored-by: zengchen <chenzeng2@huawei.com>
Co-authored-by: Greg North <gregnorth@gmail.com>
Co-authored-by: Sirisha vadrevu <sirishavadrevu@gmail.com>
Co-authored-by: Louis Jimenez <louisjimenez@google.com>
Co-authored-by: Ryuichi Inagaki <ryuichi.inagaki.24@googlemail.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Co-authored-by: Shengyu Liu <usungu@gmail.com>
Co-authored-by: Kaixiang-AWS <zkaixian@amazon.com>
Co-authored-by: Fernando Guerra <53754439+ferwguerra@users.noreply.github.com>
Co-authored-by: Cristhian Castaneda <ccastanedarivera@gmail.com>
Co-authored-by: Brandon Powell <brandon.powell@armory.io>
Co-authored-by: asgard-r <56136377+asgard-r@users.noreply.github.com>
Co-authored-by: Travis CI User <travis@example.org>
Co-authored-by: Cameron Fieber <cfieber@netflix.com>
Co-authored-by: clanesf <35847974+clanesf@users.noreply.github.com>
Co-authored-by: runner <runner@fv-az51>
Co-authored-by: runner <runner@fv-az50>
Co-authored-by: runner <runner@fv-az117.internal.cloudapp.net>
Co-authored-by: runner <runner@fv-az76>
Co-authored-by: Chris Smalley <csmalley@netflix.com>
Co-authored-by: runner <runner@fv-az33>
Co-authored-by: runner <runner@fv-az51.internal.cloudapp.net>
Co-authored-by: runner <runner@fv-az118.internal.cloudapp.net>
Co-authored-by: David Byron <dbyron@dbyron.com>
Co-authored-by: Byron David <david.byron@avast.com>
Co-authored-by: root <root@7c2d69cf985a>
Co-authored-by: root <root@630f71d41ecb>
Co-authored-by: root <root@9be1526fc31e>
Co-authored-by: root <root@3bbaae2b3f97>
Co-authored-by: root <root@60135c639e6f>
Co-authored-by: root <root@6891b1263a18>
Co-authored-by: root <root@458842d3571f>
Co-authored-by: root <root@2e5c1c42d060>
Co-authored-by: root <root@e7992a1c49ce>
Co-authored-by: root <root@18a36aa4866f>
Co-authored-by: root <root@9c300884da21>
Co-authored-by: root <root@607dfd992c8d>
Co-authored-by: root <root@4da054c07e9b>
Co-authored-by: root <root@27f6a48b6497>
Co-authored-by: root <root@4d3736916f82>
Co-authored-by: root <root@7cfcb65d82e3>
Co-authored-by: root <root@0e23aba3091b>
Co-authored-by: root <root@35bcda70644a>
Co-authored-by: root <root@7c412b00885f>
Co-authored-by: root <root@ffb573cc3eb2>
Co-authored-by: Cristhian Castaneda <cristhian.castaneda@armory.io>
Co-authored-by: root <root@7395642f9bee>
Co-authored-by: root <root@2b09fc3a4455>
Co-authored-by: Daniel Peach <daniel.peach@armory.io>
Co-authored-by: root <root@94827c35f5fd>
Co-authored-by: root <root@3ba87f91c30c>
Co-authored-by: root <root@78c161617790>
Co-authored-by: root <root@724dabba6269>
Co-authored-by: root <root@46a3f162f32d>
Co-authored-by: root <root@d5125df9eea4>
Co-authored-by: root <root@c12360e2f602>
Co-authored-by: root <root@1848c4113575>
Co-authored-by: root <root@b0fe386ef528>
costimuraru pushed a commit to costimuraru/halyard that referenced this pull request Jun 23, 2020
cristhian-castaneda added a commit to armory-io/halyard that referenced this pull request Jun 23, 2020
* chore(dependencies): Autobump korkVersion (spinnaker#1448)

* refactor(google): Update to latest google credentials style. (spinnaker#1452)

* fix(deployments): Fix sub-service name for HA echo in warning m… (spinnaker#1435)

* feat(slack): Allow configurable slack endpoint (spinnaker#1446)

* chore(dependencies): Autobump korkVersion (spinnaker#1453)

* feat(config): HalconfigDirStruct source of truth, allow override (spinnaker#1454)

* feat(artifacts): add git repo artifact support (spinnaker#1458)

* fix(provider/aws): Support for specifying lifecycle hooks for AWS accounts (spinnaker#1420)

* fix(provider/aws): Support for specifying lifecycle hooks for AWS accounts

* fix(config): fix anonymous Google storage credentials (spinnaker#1462)

* fix(build): Missing Ubuntu image dependency (spinnaker#1464)

* fix(build): `spinnaker` user/group id=1000 in Ubuntu image (spinnaker#1465)

The slim/alpine image uses 1000/1000 as the uid and gid for the `spinnaker` user. Doing the same thing for the Ubuntu image makes it simpler for installers like the Helm chart to use either image variant.

* fix(saml): get saml file path instead of file contents in saml validator (spinnaker#1455)

* fix(saml): get saml file path instead of file contents in saml validator

* remove redundant SecretSessionManager

* fix(artifacts/gitrepo): use Boolean class instead of primitive (spinnaker#1466)

* feat(halyard/localfiles): Support relative local files in hal config (spinnaker#1416)

* feat(localfiles): Support relative local files to hal config home

Usually when referencing local files in main hal config with a relative
path, halyard throws this error:

Problems in Global:
! ERROR Failed to backup user file: default/files/kubeconfig-main

- Failed to generate config.

With this change, relative files will be automatically resolved relative
from hal config home.

* feat(localfiles): Only prefix files in subdirectories of input prefix

* feat(halyard/localfiles): Use getter for hal config directory

* feat(halyard/localfiles): Error on relative files escaping hal home

* feat(localfiles): Normalize path on comparison for removing prefix

* chore(localfiles): Paths for building a path instead of string concat

* chore(localfiles): Save field references to child nodes

* chore(localfiles): Removed {%halconfig-dir%}, moved some code to parser

* chore(localfiles): Support backups made with {%halconfig-dir%}

* chore(localfiles): Support backups made with {%halconfig-dir%}

* chore(localfiles): Using java Path instead of string handling

* chore(localfiles): New FileService for getting file paths and contents

* chore(localfiles): Use FileService for getting files

* chore(dependencies): Autobump korkVersion (spinnaker#1460)

* feat(mergify): Allow OSS approvers to autosubmit (spinnaker#1470)

* chore(dependencies): Autobump korkVersion (spinnaker#1469)

* chore(dependencies): Autobump korkVersion (spinnaker#1471)

* feat(huaweicloud): first commit for huaweicloud (spinnaker#1461)

* feat(huaweicloud): first commit for huaweicloud

    r 3e29b2c feat(huaweicloud): first commit for huaweicloud
    r 14f49c4 feat(huaweicloud): add commands about account

* feat(huaweicloud): add commands of account

    r 3e29b2c feat(huaweicloud): first commit for huaweicloud
    r 14f49c4 feat(huaweicloud): add commands about account

* refactor(huaweicloud): add validator and change the way to input password

* feat(huaweicloud): add commands of bakery

* style(huaweicloud): add missed copyrights

* style(huaweicloud): make code simple

* Revert "feat(huaweicloud): first commit for huaweicloud (spinnaker#1461)" (spinnaker#1473)

This reverts commit d35767d.

* fix(deployments): Fixed k8s manifests templates generating invalid yaml (spinnaker#1456)

manifest templates were adding unnecessary commas when podAnnotations, podLabels, or serviceLabels were supplied causing deployments to fail.

* chore(dependencies): Autobump korkVersion (spinnaker#1475)

* chore(dependencies): Autobump korkVersion (spinnaker#1477)

* feat(huaweicloud): add provider of huaweicloud (spinnaker#1476)

* feat(huaweicloud): first commit for huaweicloud

    r 3e29b2c feat(huaweicloud): first commit for huaweicloud
    r 14f49c4 feat(huaweicloud): add commands about account

* feat(huaweicloud): add commands of account

    r 3e29b2c feat(huaweicloud): first commit for huaweicloud
    r 14f49c4 feat(huaweicloud): add commands about account

* refactor(huaweicloud): add validator and change the way to input password

* feat(huaweicloud): add commands of bakery

* style(huaweicloud): add missed copyrights

* style(huaweicloud): make code simple

* fix(huaweicloud): fix the bakery validate exception

* chore(dependencies): Autobump korkVersion (spinnaker#1478)

* chore(dependencies): Autobump korkVersion (spinnaker#1480)

* chore(dependencies): Autobump korkVersion (spinnaker#1481)

* feat(stats): Adds Telemetry validator, which prints a new Info level message that will get printed during all hal config telemetry enable|disable and hal deploy apply invocations (spinnaker#1479)

* chore(dependencies): Autobump korkVersion (spinnaker#1482)

* chore(dependencies): Autobump korkVersion (spinnaker#1483)

* chore(dependencies): Autobump korkVersion (spinnaker#1484)

* feat(halyard): Add support for the new java8 containers (spinnaker#1485)

* feat(halyard): Add support for the new java8 containers

* docs(halyard): update docs

* chore(release): Use the alpine containers instead of openjdk (spinnaker#1486)

The container we had been using hasn't been updated in months. See
spinnaker/spinnaker#5204.

* fix(container): Fix the slim container (spinnaker#1487)

And clean up the Dockerfile a little while I'm in there.

* feat(Artifactory Search): Add new search fields to support multiple reps (spinnaker#1472)

* feat(Artifactory Search): Add new search fields to support multiple repo types

Co-authored-by: Jonathan Haeden<Jonathan.haeden@outlook.com

* Remove field searchPattern as it is resolved based on repoType

* Add repotype to search commands for addd and edit

* Edit repoType field name in cli

* Updating commands reference with repo-type optional value

* Made groupId conditionally required

as the value is not required for Helm type repository

* fix(container): set the spinnaker user to uid 1000 (spinnaker#1488)

You can't specify a username in a k8s securityContext, only a uid. So
the uid 1000 is special and we need to keep the `spinnaker` user with
that ID.

* fix(java11): remove deprecated JVM flags (spinnaker#1489)

-XX:UseCGroupMemoryLimitForHeap was deprecated in Java 8u191. It's
functionality is now enabled by default. -XX:MaxRAMFraction was also
replaced by the (more flexible) -XX:MaxRAMPercentage.
https://www.oracle.com/technetwork/java/javase/8u191-relnotes-5032181.html

Java 8 will still launch with the old flags, but >10 will not.

We've been using Java >8u191 in every service since Spinnaker 1.14.0. So
this version of Halyard will still successfully deploy 1.14.0, but not
1.13.0 or earlier. (Because we we're hardcoding the version of the JDK
in Echo to 8u111 until then, probably accidentally.)

* chore(release): update the containers to Alpine 3.11 (spinnaker#1491)

* chore(dependencies): Autobump korkVersion (spinnaker#1492)

* chore(dependencies): Autobump korkVersion (spinnaker#1494)

* chore(dependencies): Autobump korkVersion (spinnaker#1495)

* chore(dependencies): Autobump korkVersion (spinnaker#1496)

* chore(dependencies): Autobump korkVersion (spinnaker#1497)

* chore(dependencies): Autobump korkVersion (spinnaker#1499)

* chore(dependencies): Autobump korkVersion (spinnaker#1500)

* chore(dependencies): Autobump korkVersion (spinnaker#1503)

* chore(dependencies): Autobump korkVersion (spinnaker#1504)

* chore(dependencies): Autobump korkVersion (spinnaker#1505)

* feat(plugins): able to add plugin repositories (spinnaker#1498)

* feat(plugins): able to add plugin repositories

* chore(plugins): hal configs for plugin repositories match service configs

* chore(dependencies): Autobump korkVersion (spinnaker#1506)

* chore(dependencies): Autobump korkVersion (spinnaker#1508)

* chore(dependencies): Autobump korkVersion (spinnaker#1509)

* config(core): Remove MPTV2 UI feature flag (spinnaker#1510)

* fix(versions): reenable version checking (spinnaker#1511)

This was accidentally removed in spinnaker#936.

* fix(container): leave Python and curl installed (spinnaker#1512)

* fix(kubernetes): Only load kubeconfig if it's a local file (#33) (spinnaker#1507)

* chore(dependencies): Autobump korkVersion (spinnaker#1513)

* feat(build): Enable local Maven repo when detecting SNAPSHOT dependency (spinnaker#1514)

* chore(dependencies): Spring Boot 2.2.4 upgrade

* feat(build): Enable local Maven repo when detecting SNAPSHOT dependency

* chore(dependencies): Autobump korkVersion (spinnaker#1516)

* chore(containers): Upgrade the bundled tools (spinnaker#1515)

* chore(dependencies): Autobump korkVersion (spinnaker#1518)

* chore(dependencies): Autobump korkVersion (spinnaker#1519)

* chore(dependencies): Autobump korkVersion (spinnaker#1521)

* feat(deployment): Overwrite deploy command's timeout value (spinnaker#1502)

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* fix(plugins): Ignore extraneous pluginConfigurations when parsing config file. (spinnaker#1522)

* chore(dependencies): Autobump korkVersion (spinnaker#1523)

* chore(builds): Add GHActions build on PR, master, and release branches (spinnaker#1524)

* feat(provider/tencentcloud): Add TencentCloud account configuration support to Halyard (spinnaker#1501)

* chore(dependencies): Autobump korkVersion (spinnaker#1526)

* chore(dependencies): Autobump korkVersion (spinnaker#1527)

* refactor(ci): Make AbstractAccountCommand reusable (spinnaker#1525)

GoogleCloudBuildAccountCommand directly implements AbstractHasAccountCommand. This is ok currently since
Google Cloud Build is the only CI service that uses account instead of master. However, it blocks adding
new account-based CI service to halyard since a lot of logics need to be duplicated across packages. This
commit is aimming to abstract some common parts for account-based commands which makes adding a new CI
service much easier.

* chore(dependencies): Autobump korkVersion (spinnaker#1529)

* feat(codebuild): Add support for manipulating AWS CodeBuild accounts (spinnaker#1528)

* fix(flags): Revert "config(core): Remove MPTV2 UI feature flag (spinnaker#1510)" (spinnaker#1530)

This reverts commit 759e988.

* chore(dependencies): Autobump korkVersion (spinnaker#1532)

* chore(dependencies): Autobump korkVersion (spinnaker#1533)

* chore(dependencies): Autobump korkVersion (spinnaker#1534)

* chore(dependencies): Autobump korkVersion (spinnaker#1535)

* chore(dependencies): Autobump korkVersion (spinnaker#1536)

* chore(dependencies): Autobump korkVersion (spinnaker#1537)

* feat(plugins): deploy PF4J plugins to orca (spinnaker#1520)

* chore(dependencies): Autobump korkVersion (spinnaker#1540)

* chore(dependencies): Autobump korkVersion (spinnaker#1541)

* feat(kubernetes): Enable TCP probe for containers (spinnaker#1542)

* feat(kubernetes): Enable TCP probe for containers

* fix code readability

* fix not not

* feat(features): add support for Cloud Formation (spinnaker#1493)

* feat(features): add support for Cloud Formation

* name fixes

* name fixes

* fixed documentation

* feat(features): add support for Cloud Formation

* feat(features): add support for Cloud Formation

* feat(features): add support for Cloud Formation

* chore(dependencies): Autobump korkVersion (spinnaker#1544)

* feat(telemetry): add ability to report deploy method (spinnaker#1543)

* feat(telemetry): add ability to report deploy method to "echo" via telemetry

* feat(telemetry): code formatting

* chore(dependencies): Autobump korkVersion (spinnaker#1546)

* fix(gate): apply the JVM flags to gate (spinnaker#1547)

It looks like gate and deck were overriding `buildServiceSettings` just to avoid calling `setAddress`. But then when the JVM flags got added to that method, they both got skipped. Since `deck` doesn't use a JVM, that's no big deal, but for `gate` it's an issue.

Held my nose and went for a minimally invasive change rather than a more holistic cleanup.

* chore(dependencies): Autobump korkVersion (spinnaker#1548)

* feat(kubernetes): prepare for upcoming removal of V1 provider (spinnaker#1549)

* refactor(kubernetes): separate V1 and V2 account validators

* feat(kubernetes): add warning for v1 accounts

* feat(cli): only expose providerVersion for kubernetes accounts

* feat(kubernetes): default new and unspecified accounts to V2

* chore(dependencies): Autobump korkVersion (spinnaker#1555)

* feat(plugins): lays down plugin-manifest for Deck (spinnaker#1539)

* feat(plugins): lays down plugin-manifest for Deck

* chore(style): spotless apply

* fix(plugins): using template for plugin entries for deck

* fix(plugins): corrected filename for plugin-manifest.json

Co-authored-by: Cameron Motevasselani <cmotevasselani@gmail.com>

* chore(dependencies): Autobump korkVersion (spinnaker#1556)

* feat(codebuild): Add support for static credentials (spinnaker#1554)

1. Add an AbstractEditCiCommand class that could be inherited from. For now only codebuild account
command extends this class. There could be more in the future.
2. Mark assume-role and account-id as not required so that the static credentials could be used directly
3. Add an API in halyard daemon to set custom fields for CI providers

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* chore(dependencies): Autobump korkVersion (spinnaker#1557)

* chore(dependencies): Autobump korkVersion (spinnaker#1558)

* chore(dependencies): upgrade commons-collections  version (spinnaker#1545)

* chore(dependencies): Autobump korkVersion (spinnaker#1560)

* chore(dependencies): Autobump korkVersion (spinnaker#1561)

* chore(dependencies): Autobump korkVersion (spinnaker#1562)

Co-authored-by: Travis CI User <travis@example.org>

* chore(dependencies): Autobump korkVersion (spinnaker#1563)

Co-authored-by: Travis CI User <travis@example.org>

* chore(dependencies): Autobump korkVersion (spinnaker#1566)

Co-authored-by: Travis CI User <travis@example.org>

* chore(containers): Upgrade the bundled tools (spinnaker#1568)

* chore(containers): tell curl to fail if it gets an HTTP error

This will prevent errors from going unnoticed as happened with the
missing AWS client.

* chore(containers): Upgrade the bundled tools

* feat(stats): Rename telemetry to stats, enable by default (spinnaker#1565)

* feat(stats): Rename telemetry to stats, enable by default
* fix(stats): Rename TelemetryWrapper to StatsWrapper

* fix(stats): New stats command only available in 1.19+ (spinnaker#1569)

* chore(dependencies): Autobump korkVersion (spinnaker#1570)

Co-authored-by: Cameron Fieber <cfieber@netflix.com>

* chore(dependencies): Autobump korkVersion (spinnaker#1571)

Co-authored-by: Travis CI User <travis@example.org>

* feat(k8s/deploy): Add custom health check to service-settings (spinnaker#1572)

* feat(k8s/deploy): Add custom health check to service-settings.

Need the ability to override the default commands created and populated
in the Deployments readinessprobe. In our use case mTLS has been enabled
and we need a way to modify the readiness probe in each service so that
you can pass in the client certificate.

By adding this functionality Halyard can support a much wider array of potential
configurations for health checks for cases where a simple check of /health might not
be desirable.

* Update var to the correct generic type

* fix(k8s/deploy): Update var to the correct generic type

* chore(fix/style): ran spotlessJava to fix style issues

* chore(dependencies): Autobump korkVersion (spinnaker#1573)

Co-authored-by: runner <runner@fv-az51>

* chore(dependencies): Autobump korkVersion (spinnaker#1574)

Co-authored-by: runner <runner@fv-az50>

* chore(dependencies): Autobump korkVersion (spinnaker#1575)

Co-authored-by: runner <runner@fv-az117.internal.cloudapp.net>

* chore(dependencies): Autobump korkVersion (spinnaker#1576)

Co-authored-by: runner <runner@fv-az76>

* chore(dependencies): Autobump korkVersion (spinnaker#1577)

Co-authored-by: runner <runner@fv-az51>

* feat(build): Remove TravisCI and replace with GitHub Actions (spinnaker#1578)

* chore(build): Remove init-publish script (spinnaker#1579)

* Revert "chore(build): Remove init-publish script (spinnaker#1579)" (spinnaker#1580)

This reverts commit fd2ef27.

* fix(config): Ignore any existing `plugins` stanzas. (spinnaker#1583)

Slack is littered with people having this issue. It looks like this was added in halyard 1.23 on 8/27/2019. So anyone with a config after that will have this issue.

* chore(mergify): release-* branches require release manager approval (spinnaker#1584)

The mergify config currently doesn't distinguish between merging to master and
merging to a release branch.  It currently never merges to release branches
because mergify doesn't have permission to merge to these branches (due to
branch protection rules).

I don't want to give mergify that permission without updating the config file
here, as then it would merge to release branches after any approval, whereas we
only want to merge to release branches if a PR is approved by a release manager.

This updates the mergify config to scope the existing rules to only apply to
the master branch, and adds a new rule to merge to release branches upon
approval by a release manager.

Because the 1.17 branch (and likely the 1.18 branch in some repos) is still
exclusively using Travis CI instead of github actions, also add a rule the
merges if Travis CI passes to account for these branches. This rule can be
deleted once all of the active branches in the repo are using Github actions.

Co-authored-by: Michael Plump <plumpy@google.com>

* chore(dependencies): Autobump korkVersion (spinnaker#1585)

Co-authored-by: runner <runner@fv-az33>

* chore(dependencies): Autobump korkVersion (spinnaker#1586)

Co-authored-by: runner <runner@fv-az51.internal.cloudapp.net>

* fix(plugins): fix plugins-manifest.json  (spinnaker#1564)

* fix(plugins): changing plugin-manifest.js to .json file type

* fix(plugins): remove comments from json file, handle multiple plugins

* feat(plugins): add plugins to all services (spinnaker#1559)

* feat(plugins): add plugins to all services

* refactor(plugins): remove introspection

* refactor(plugins): change Boolean to boolean

* chore(dependencies): Autobump korkVersion (spinnaker#1587)

Co-authored-by: runner <runner@fv-az118.internal.cloudapp.net>

* chore(dependencies): Autobump korkVersion (spinnaker#1588)

Co-authored-by: runner <runner@fv-az51>

* chore(gha): don't run the GHA build when pushing to a fork (spinnaker#1589)

* fix(plugins): Revert add plugins to all services (spinnaker#1559) (spinnaker#1590)

This change breaks deploying any version of Spinnaker <= 1.18
using Halyard, so is being reverted.

This reverts commit 4ed4d26.

* chore(dependencies): Autobump korkVersion (spinnaker#1591)

Co-authored-by: runner <runner@fv-az51>

* chore(dependencies): Autobump korkVersion (spinnaker#1592)

Co-authored-by: runner <runner@fv-az51>

* chore(dependencies): Autobump korkVersion (spinnaker#1593)

Co-authored-by: runner <runner@fv-az51>

* chore(dependencies): Autobump korkVersion (spinnaker#1595)

Co-authored-by: runner <runner@fv-az51>

* feat(plugins): add plugins to all services (spinnaker#1594)

* feat(plugins): add plugins to all services

* fix(regression): update version check to handle non-semver releases

* fix(plugins): do not deploy to kayenta until 1.20.0

* fix(container): restore openssl to alpine image (spinnaker#1596)

removed by spinnaker@43dfc67

In addition to putting back something that was there previously, openssl is in the ubuntu
container, so let's have it here as well.

Co-authored-by: Byron David <david.byron@avast.com>

* chore(dependencies): Autobump korkVersion (spinnaker#1599)

Co-authored-by: runner <runner@fv-az50>

* fix(daemon): Don't try to kill daemon created by another user (spinnaker#1600)

Currently if the Halyard daemon was created by another user, we
kill it and try to start one of our own (likely failing as we
probably don't have permission to kill it).

This is because we look up the PID in the pid file, then try to see
if the process exists with 'ps' but don't pass the '-e' flag to get
all processes (including those created by other users). This is
particularly important given that the Halyard install process specifically
asks you to specify a user with which to run Halyard.

* chore(build): upgrade spinnaker gradle plugin (spinnaker#1601)

* chore(build): move spinnaker library versions out to gradle.properties

* chore(build): upgrade spinnaker gradle plugin

* chore(build): enable the spinnaker project plugin (spinnaker#1602)

Whoops, missed this part that used to be in init-publish.gradle.

* chore(mergify): if an autobump fails, request a review (spinnaker#1603)

* chore(deps): bump internal spinnaker dependencies (spinnaker#1604)

I'll wire all of these up to the bumpdeps action, but I'd like to test these larger jumps first to make sure they go okay...

* chore(dependencies): Autobump spinnakerGradleVersion (spinnaker#1605)

Co-authored-by: root <root@7c2d69cf985a>

* chore(mergify): autobump reviews should go to oss-approvers (spinnaker#1606)

* chore(containers): Make Dockerfiles work with buildtool's containers.yml (spinnaker#1607)

* chore(gradle): Upgrade gradlew to 5.6.4

* chore(containers): Make Dockerfiles work with buildtool's containers.yml

* chore(release): remove jenkins build scripts

* chore(java11): Compile with Java 11 (but targeting Java 8) (spinnaker#1608)

* chore(java11): Compile with Java 11 (but targeting Java 8)

* chore(java11): Fix compilation for developers using a Java 11 JDK

* chore(java11): Use a Java 11 JRE

* chore(dependencies): Autobump korkVersion (spinnaker#1609)

Co-authored-by: root <root@630f71d41ecb>

* chore(dependencies): Autobump korkVersion (spinnaker#1610)

Co-authored-by: root <root@9be1526fc31e>

* chore(dependencies): Autobump korkVersion (spinnaker#1611)

Co-authored-by: root <root@3bbaae2b3f97>

* chore(dependencies): Autobump korkVersion (spinnaker#1612)

Co-authored-by: root <root@60135c639e6f>

* chore(dependencies): Autobump spinnakerGradleVersion (spinnaker#1613)

Co-authored-by: root <root@6891b1263a18>

* fix(publishing): No longer need to change ACL on halyard artifact since the whole bucket is public (spinnaker#1614)

* feat(cli): remove unused appengine feature flag (spinnaker#1615)

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* chore(dependencies): Autobump spinnakerGradleVersion (spinnaker#1616)

Co-authored-by: root <root@458842d3571f>

* chore(dependencies): Autobump korkVersion (spinnaker#1617)

Co-authored-by: root <root@2e5c1c42d060>

* chore(dependencies): Autobump spinnakerGradleVersion (spinnaker#1621)

Co-authored-by: root <root@e7992a1c49ce>

* chore(dependencies): Autobump korkVersion (spinnaker#1622)

Co-authored-by: root <root@18a36aa4866f>

* feat(artifacts): remove artifacts and artifactsRewrite feature flags (spinnaker#1620)

Related to: https://github.com/spinnaker/governance/blob/master/rfc/legacy_artifacts_ui_removal.md

Now that the `artifacts` and `artifactsRewrite` flags are [removed from Deck](spinnaker/deck#8184) in preparation for release 1.20, let's remove their corresponding `hal` commands and provide a message for users deploying >= 1.20 that these fields are no longer necessary.

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* chore(dependencies): Autobump fiatVersion (spinnaker#1624)

Co-authored-by: root <root@9c300884da21>

* chore(dependencies): Autobump korkVersion (spinnaker#1625)

Co-authored-by: root <root@607dfd992c8d>

* chore(dependencies): Autobump korkVersion (spinnaker#1627)

Co-authored-by: root <root@4da054c07e9b>

* chore(build): update to newer spinnaker project plugin (spinnaker#1626)

updates to gradle 6.3

updates github actions workflows for new release flags

* chore(dependencies): Autobump spinnakerGradleVersion (spinnaker#1628)

Co-authored-by: root <root@27f6a48b6497>

* feat(cli): remove Travis, Wercker, Gremlin, and InfrastructureStages feature flags (spinnaker#1619)

* feat(cli): remove Travis feature flag

* feat(cli): remove Wercker feature flag

* feat(cli): remove Gremlin feature flag

* feat(cli): remove infrastructureStages feature flag

* chore(dependencies): Autobump spinnakerGradleVersion (spinnaker#1629)

Co-authored-by: root <root@4d3736916f82>

* chore(dependencies): Autobump spinnakerGradleVersion (spinnaker#1632)

Co-authored-by: root <root@7cfcb65d82e3>

* fix(containers): Add retry to Docker containers downloading kubectl (spinnaker#1633)

* fix(build): use bom for kubernetes-client version

removes explicit version opinion which was causing the build to blow up
in some dependency resolution cases (:halyard-web:depInsight
--configuration runtimeClasspath --dependency kork-core)

also was causing the transitives of kubernetes-client not to end up in
the application/deb

* chore(build): gradle build cleanup

removes unnecessary application of java plugin, we apply java-library to all subprojects
removes unnecessary application of protobuf plugin in halyard-web
removes reference to compile scope, uses implementation scope instead

* chore(dependencies): Autobump spinnakerGradleVersion (spinnaker#1635)

Co-authored-by: root <root@0e23aba3091b>

* chore(dependencies): Autobump clouddriverVersion (spinnaker#1637)

Co-authored-by: root <root@35bcda70644a>

* feat(docs): document poor performance of sortTagsByDate flag (spinnaker#1639)

* chore(dependencies): Autobump spinnakerGradleVersion (spinnaker#1641)

Co-authored-by: root <root@7c412b00885f>

* chore(dependencies): Autobump clouddriverVersion (spinnaker#1642)

Co-authored-by: root <root@ffb573cc3eb2>

* fix(google): Update constructors to account for retry changes (spinnaker#1640)

* fix(google): Update constructors to account for retry changes

The changes to the retry logic updated some fields from Long to
int (because we won't be waiting 24 days between retries); this
commit just updates the places we called them in Halyard to pass
an int.

* chore(dependencies): Bump front50 version

* fix(versions): Use thread safe yaml parser (spinnaker#1644)

* feat(telemetry): code formatting

* feat(telemetry): code formatting

* fix(versions): Use thread safe yaml parser (#39)

Co-authored-by: Cristhian Castaneda <cristhian.castaneda@armory.io>

* fix(cli): replace artifacts commands (spinnaker#1645)

* chore(dependencies): Autobump korkVersion (spinnaker#1647)

Co-authored-by: root <root@7395642f9bee>

* chore(dependencies): Autobump korkVersion (spinnaker#1648)

Co-authored-by: root <root@2b09fc3a4455>

* chore(plugins): remove `uiResourceLocation` plugin config parameter (spinnaker#1638)

Co-authored-by: Cameron Motevasselani <cmotevasselani@gmail.com>

* chore(dependencies): Autobump korkVersion (spinnaker#1650)

Co-authored-by: root <root@94827c35f5fd>

* chore(dependencies): Autobump spinnakerGradleVersion (spinnaker#1651)

Co-authored-by: root <root@3ba87f91c30c>

* fix(daemon): Fix startup failure by reverting incorrect ps usage (spinnaker#1653)

I'm not sure what I was thinking with this original PR; adding the
-e flag will return all processes regardless of PID, and is not
necessary when passing a PID.

This is causing halyard to fail to startup because we think that the
daemon is always running.

This reverts commit 4a686e9.

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* chore(dependencies): Autobump korkVersion (spinnaker#1652)

Co-authored-by: root <root@78c161617790>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* fix(cli): replace gremlin commands for 1.18 and 1.19 compatibility (spinnaker#1655)

* fix(local-git): remove the Java version check from Halyard local-git deployment (spinnaker#1658)

I suppose I could put in something to check for Java 11, but only looking at the version of java in your $PATH seems like a pretty naive way to go about doing this check, since there are myriad ways you could have a JDK configured for Gradle.

* chore(dependencies): Autobump korkVersion (spinnaker#1659)

Co-authored-by: root <root@724dabba6269>

* chore(dependencies): Autobump korkVersion (spinnaker#1661)

Co-authored-by: root <root@46a3f162f32d>

* feat(build): adds project properties for composite builds. (spinnaker#1660)

This adds flags for the related projects that we bring in
as dependencies, to enable referencing the related project
as a composite build via gradle.

This method of enabling composite builds seems to work
significantly better with IntelliJ. (As opposed to
importing multiple projects into the IDE and configuring
the composite relationship after the fact)

This holds the opinion that all the projects are checked
out in the same parent directory, and can be found at
`'../<projectName>'` relative to this project.

To enable a composite reference to a project, set the
project property `'<projectName>Composite=true'`.

This can be done either as
* a command line flag, e.g. `-PkorkComposite=true`
* a project property via gradle.properties
* a global project property via ~/.gradle/gradle.properties

* feat(boms): Change default dockerRegistry to GAR (spinnaker#1657)

* fix(releases): Fix minor typos in promotion script (spinnaker#1663)

* chore(dependencies): Autobump korkVersion (spinnaker#1664)

Co-authored-by: root <root@d5125df9eea4>

* chore(dependencies): Autobump spinnakerGradleVersion (spinnaker#1665)

Co-authored-by: root <root@c12360e2f602>

* chore(dependencies): Autobump korkVersion (spinnaker#1666)

Co-authored-by: root <root@1848c4113575>

* chore(dependencies): Autobump korkVersion (spinnaker#1667)

Co-authored-by: root <root@b0fe386ef528>

* chore(build): gradle 6.4 (spinnaker#1668)

* chore(dependencies): Autobump fiatVersion (spinnaker#1669)

Co-authored-by: root <root@e6c46326ad8b>

* chore(dependencies): Autobump fiatVersion (spinnaker#1670)

Co-authored-by: root <root@4b48b7bffe9a>

* refactor(deps): remove fabric8-utils dependency (spinnaker#1671)

* refactor(deploy): Make kubectl deployer the only option for a distributed installation on Kubernetes  (spinnaker#1672)

* refactor(deploy): remove clouddriver-kubernetes dependency from KubernetesService

KubernetesService currently calls out to clouddriver-kubernetes-v1 to assemble an image registry, repository, and tag into a KubernetesImageDescription object, and then assemble those components into a Docker image ID. Since clouddriver-kubernetes-v1 will not be included in the next Clouddriver release, let's instead include the relevant string formatting logic inline.

* refactor(kubernetes): remove Kubernetes V1 account kubeconfig validation

The legacy Kubernetes (V1) provider is deprecated, and will not be included in Spinnaker 1.21. Given that no new legacy accounts should be added, let's remove the V1-specific kube config validation that we never applied to V2 accounts anyway. This will unblock us from completely decoupling Halyard's distributed installation and Clouddriver's Kubernetes provider. This commit also updates my TODO to remove the remaining V1 validation logic when no supported Spinnaker release includes the V1 provider (tracking this work in this [GitHub issue](spinnaker/spinnaker#5749)).

* refactor(deploy): Make kubectl deployer the only option for a distributed installation on Kubernetes

Spinnaker 1.21 will not include support for using legacy (V1) accounts to deploy to Kubernetes. The next release of Halyard will not include support for using a legacy (V1) account to deploy Spinnaker itself using Halyard. It should be relatively straightforward for users to migrate from the V1 deployer to the kubectl deployer, and can be done independently of migrating any pipelines or other Spinnaker accounts to the V2 provider. Given that we don't publish a Halyard changelog, I will be sure to communicate this in the #halyard Slack channel when we do the next Halyard release.

* refactor(deps): remove dependency on clouddriver-kubernetes

The previous commits removed all clients of clouddriver-kubernetes and clouddriver-kubernetes-v1. Moving forward, this will prevent the class of bug where contributors do not realize that breaking changes to Clouddriver could impact Halyard (at least in the Kubernetes provider).

* chore(dependencies): Autobump korkVersion (spinnaker#1673)

Co-authored-by: root <root@ff9e3aed0c45>

* chore(dependencies): Autobump front50Version (spinnaker#1674)

Co-authored-by: root <root@f40626cb6e1a>

* chore(dependencies): Autobump korkVersion (spinnaker#1675)

Co-authored-by: root <root@3ec048d8ec28>

* refactor(config): remove unused feature properties (spinnaker#1676)

* chore(dependencies): Autobump korkVersion (spinnaker#1677)

Co-authored-by: root <root@30587641ae05>

* chore(dependencies): Autobump fiatVersion (spinnaker#1679)

Co-authored-by: root <root@0bd80700071c>

* chore(dependencies): Autobump korkVersion (spinnaker#1680)

Co-authored-by: root <root@c9ef12ff2f5c>

* fix(front50): Remove duplicate spinnaker key (spinnaker#1662)

* feat(telemetry): code formatting

* fix(plugins): removing extra spinnaker key

* fix(front50): fix nesting of persistent storage configs

Co-authored-by: Cristhian Castaneda <cristhian.castaneda@armory.io>

* chore(dependencies): Autobump fiatVersion (spinnaker#1681)

Co-authored-by: root <root@ebbc24838ebb>

* chore(dependencies): Autobump korkVersion (spinnaker#1682)

Co-authored-by: root <root@411b28224cf4>

* fix(plugins): remove edit plugin command. (spinnaker#1678)

* fix(plugins): remove edit plugin command.

* fix(plugins): docs update.

* fix(plugins): remove blank line on imports.

* fix(plugins): remove unused code and remove edit plugin from Rest API

Co-authored-by: Clay McCoy <github@claymccoy.com>
Co-authored-by: Cameron Motevasselani <cmotevasselani@gmail.com>
Co-authored-by: Daniel Peach <daniel.peach@armory.io>

* chore(dependencies): Autobump korkVersion (spinnaker#1683)

Co-authored-by: root <root@cd13fc09c855>

* chore(dependencies): Autobump fiatVersion (spinnaker#1684)

Co-authored-by: root <root@0de217a3f863>

* chore(build): gradle 6.4.1 (spinnaker#1687)

* fix(compiler): set the version when using Dockerfile.compile (spinnaker#1686)

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* chore(dependencies): Autobump spinnakerGradleVersion (spinnaker#1688)

Co-authored-by: root <root@ff964b5a57b7>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* chore(dependencies): Autobump korkVersion (spinnaker#1689)

Co-authored-by: root <root@b22929ed9069>

* chore(dependencies): Autobump korkVersion (spinnaker#1690)

Co-authored-by: root <root@b8d52fc22296>

* chore(dependencies): Autobump korkVersion (spinnaker#1691)

Co-authored-by: root <root@b562d947ef6d>

* refactor(deck): remove unneeded env vars from DeckDockerProfileFactory (spinnaker#1693)

When building Deck as a container, several environment variables are required when using SSL. However, the AUTH_ENABLED and FIAT_ENABLED environment variables are only read from Deck's settings.js when doing local development. When building Deck as a container, auth and fiat configs are read from the features configuration block, not environment variables, so we can safely remove this code.

* chore(dependencies): Autobump korkVersion (spinnaker#1694)

Co-authored-by: root <root@f9f2be0e9d83>

* chore(dependencies): Autobump korkVersion (spinnaker#1695)

Co-authored-by: root <root@c25c6c9c6112>

* chore(dependencies): Autobump korkVersion (spinnaker#1696)

Co-authored-by: root <root@bc227d299710>

* refactor(deck): remove unneeded appengine.enabled binding from DeckProfileFactory (spinnaker#1697)

* refactor(deck): remove unneeded notifications.enabled binding (spinnaker#1698)

* chore(dependencies): Autobump korkVersion (spinnaker#1699)

Co-authored-by: root <root@9da12d0fc23b>

* chore(dependencies): Autobump korkVersion (spinnaker#1700)

Co-authored-by: root <root@28906c17cd67>

* chore(dependencies): Autobump korkVersion (spinnaker#1701)

Co-authored-by: root <root@ba0c9d1c783d>

* chore(dependencies): Autobump korkVersion (spinnaker#1703)

Co-authored-by: root <root@6091e921213e>

* style(core): Add missing space to log (spinnaker#1704)

This will make the logs more readable as we move from this:
`RUNNINGCollected child task [Deploy spin-redis]`

to this:
`RUNNING Collected child task [Deploy spin-redis]`

* fix(mergify): remove duplicate line from mergify.yml (spinnaker#1707)

* fix(halyard): Replaced NPE caused by empty kubeconfig file when running 'hal deploy apply' with a more descriptive exception. (spinnaker#1706)

Parsed kubeconfig returned by the object mapper is null when the kubeconfig file is empty so I added a null check. Fixes the following reported issue: spinnaker/spinnaker#5224
Furthermore, extracted some of the work from processKubernetesAccount into seperate methods in hopes of making the method more readable.

* fix(halyard): bump CD to 5.61.0 and fix CF credentials validator (spinnaker#1708)

Co-authored-by: Zach Smith <zachsmith@ip-192-168-1-69.us-west-2.compute.internal>

* chore(dependencies): Autobump korkVersion (spinnaker#1709)

Co-authored-by: root <root@f0fe681e84f7>

* chore(dependencies): Autobump fiatVersion (spinnaker#1710)

Co-authored-by: root <root@b0032545e0d1>

* chore(dependencies): Autobump front50Version (spinnaker#1711)

Co-authored-by: root <root@99dc460a1671>

* chore(dependencies): Autobump korkVersion (spinnaker#1712)

Co-authored-by: root <root@1d7e715ab9f3>

* chore(dependencies): Autobump korkVersion (spinnaker#1713)

Co-authored-by: root <root@8afdcb247cd4>

* chore(dependencies): Autobump korkVersion (spinnaker#1714)

Co-authored-by: root <root@22b5a785fb59>

* fix(profile): write correct changelog file name to Deck settings.js (spinnaker#1715)

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* chore(dependencies): Autobump korkVersion (spinnaker#1716)

Co-authored-by: root <root@c320d4c3c16f>

* chore(dependencies): Autobump korkVersion (spinnaker#1718)

Co-authored-by: root <root@8bcd4d2873be>

* chore(dependencies): Autobump korkVersion (spinnaker#1719)

Co-authored-by: root <root@f84528c7f520>

* chore(dependencies): Autobump korkVersion (spinnaker#1721)

Co-authored-by: root <root@9b081db80ac0>

* chore(dependencies): Autobump korkVersion (spinnaker#1722)

Co-authored-by: root <root@c55a81492b7a>

* chore(dependencies): Autobump korkVersion (spinnaker#1723)

Co-authored-by: root <root@8dce36ec7ef6>

* chore(containers): revert the Artifact Registry changes (spinnaker#1724)

* Revert "fix(releases): Fix minor typos in promotion script (spinnaker#1663)"

This reverts commit 12df445

* Revert "feat(boms): Change default dockerRegistry to GAR (spinnaker#1657)"

This reverts commit e827e8e

* chore(dependencies): Autobump korkVersion (spinnaker#1725)

Co-authored-by: root <root@bd79e168cfe6>

* chore(dependencies): Autobump korkVersion (spinnaker#1726)

Co-authored-by: root <root@1dccf7052742>

* chore(release): OSS halyard merge

* chore(release): OSS halyard merge

* chore(release): Docs update

Co-authored-by: spinnakerbot <spinbot@spinnaker.io>
Co-authored-by: Matt Duftler <duftler@google.com>
Co-authored-by: Ryuzo Yamamoto <ryuzo.yamamoto@gmail.com>
Co-authored-by: Jorge Dias <jorge@mrdias.com>
Co-authored-by: Nicolas Cohen <ncknt@users.noreply.github.com>
Co-authored-by: Kathryn Lewis <kathryn.lewis@armory.io>
Co-authored-by: Costi Muraru <costimuraru@gmail.com>
Co-authored-by: Pierre Delagrave <pdelagrave@pivotal.io>
Co-authored-by: Travis Tomsu <ttomsu@google.com>
Co-authored-by: zengchen <chenzeng2@huawei.com>
Co-authored-by: Maggie Neterval <mneterval@google.com>
Co-authored-by: Greg North <gregnorth@gmail.com>
Co-authored-by: Michael Plump <plumpy@google.com>
Co-authored-by: Sirisha vadrevu <sirishavadrevu@gmail.com>
Co-authored-by: Cameron Motevasselani <cameron.motevasselani@armory.io>
Co-authored-by: Louis Jimenez <louisjimenez@google.com>
Co-authored-by: Ryuichi Inagaki <ryuichi.inagaki.24@googlemail.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Co-authored-by: Shengyu Liu <usungu@gmail.com>
Co-authored-by: Kaixiang-AWS <zkaixian@amazon.com>
Co-authored-by: Cameron Motevasselani <cmotevasselani@gmail.com>
Co-authored-by: Fernando Guerra <53754439+ferwguerra@users.noreply.github.com>
Co-authored-by: Cristhian Castaneda <ccastanedarivera@gmail.com>
Co-authored-by: Brandon Powell <brandon.powell@armory.io>
Co-authored-by: asgard-r <56136377+asgard-r@users.noreply.github.com>
Co-authored-by: Travis CI User <travis@example.org>
Co-authored-by: Cameron Fieber <cfieber@netflix.com>
Co-authored-by: clanesf <35847974+clanesf@users.noreply.github.com>
Co-authored-by: runner <runner@fv-az51>
Co-authored-by: runner <runner@fv-az50>
Co-authored-by: runner <runner@fv-az117.internal.cloudapp.net>
Co-authored-by: runner <runner@fv-az76>
Co-authored-by: Chris Smalley <csmalley@netflix.com>
Co-authored-by: Eric Zimanyi <ezimanyi@google.com>
Co-authored-by: runner <runner@fv-az33>
Co-authored-by: runner <runner@fv-az51.internal.cloudapp.net>
Co-authored-by: runner <runner@fv-az118.internal.cloudapp.net>
Co-authored-by: David Byron <dbyron@dbyron.com>
Co-authored-by: Byron David <david.byron@avast.com>
Co-authored-by: root <root@7c2d69cf985a>
Co-authored-by: root <root@630f71d41ecb>
Co-authored-by: root <root@9be1526fc31e>
Co-authored-by: root <root@3bbaae2b3f97>
Co-authored-by: root <root@60135c639e6f>
Co-authored-by: root <root@6891b1263a18>
Co-authored-by: root <root@458842d3571f>
Co-authored-by: root <root@2e5c1c42d060>
Co-authored-by: root <root@e7992a1c49ce>
Co-authored-by: root <root@18a36aa4866f>
Co-authored-by: root <root@9c300884da21>
Co-authored-by: root <root@607dfd992c8d>
Co-authored-by: root <root@4da054c07e9b>
Co-authored-by: root <root@27f6a48b6497>
Co-authored-by: root <root@4d3736916f82>
Co-authored-by: root <root@7cfcb65d82e3>
Co-authored-by: root <root@0e23aba3091b>
Co-authored-by: root <root@35bcda70644a>
Co-authored-by: root <root@7c412b00885f>
Co-authored-by: root <root@ffb573cc3eb2>
Co-authored-by: Cristhian Castaneda <cristhian.castaneda@armory.io>
Co-authored-by: root <root@7395642f9bee>
Co-authored-by: root <root@2b09fc3a4455>
Co-authored-by: Daniel Peach <daniel.peach@armory.io>
Co-authored-by: root <root@94827c35f5fd>
Co-authored-by: root <root@3ba87f91c30c>
Co-authored-by: root <root@78c161617790>
Co-authored-by: root <root@724dabba6269>
Co-authored-by: root <root@46a3f162f32d>
Co-authored-by: root <root@d5125df9eea4>
Co-authored-by: root <root@c12360e2f602>
Co-authored-by: root <root@1848c4113575>
Co-authored-by: root <root@b0fe386ef528>
Co-authored-by: root <root@e6c46326ad8b>
Co-authored-by: root <root@4b48b7bffe9a>
Co-authored-by: root <root@ff9e3aed0c45>
Co-authored-by: root <root@f40626cb6e1a>
Co-authored-by: root <root@3ec048d8ec28>
Co-authored-by: root <root@30587641ae05>
Co-authored-by: root <root@0bd80700071c>
Co-authored-by: root <root@c9ef12ff2f5c>
Co-authored-by: root <root@ebbc24838ebb>
Co-authored-by: root <root@411b28224cf4>
Co-authored-by: Edgar Garcia <63310723+edgarulg@users.noreply.github.com>
Co-authored-by: Clay McCoy <github@claymccoy.com>
Co-authored-by: root <root@cd13fc09c855>
Co-authored-by: root <root@0de217a3f863>
Co-authored-by: root <root@ff964b5a57b7>
Co-authored-by: root <root@b22929ed9069>
Co-authored-by: root <root@b8d52fc22296>
Co-authored-by: root <root@b562d947ef6d>
Co-authored-by: root <root@f9f2be0e9d83>
Co-authored-by: root <root@c25c6c9c6112>
Co-authored-by: root <root@bc227d299710>
Co-authored-by: root <root@9da12d0fc23b>
Co-authored-by: root <root@28906c17cd67>
Co-authored-by: root <root@ba0c9d1c783d>
Co-authored-by: root <root@6091e921213e>
Co-authored-by: Patrik Greco <pgreco@apple.com>
Co-authored-by: Matt Santa <mattsanta@google.com>
Co-authored-by: Zach Smith <33258732+zachsmith1@users.noreply.github.com>
Co-authored-by: Zach Smith <zachsmith@ip-192-168-1-69.us-west-2.compute.internal>
Co-authored-by: root <root@f0fe681e84f7>
Co-authored-by: root <root@b0032545e0d1>
Co-authored-by: root <root@99dc460a1671>
Co-authored-by: root <root@1d7e715ab9f3>
Co-authored-by: root <root@8afdcb247cd4>
Co-authored-by: root <root@22b5a785fb59>
Co-authored-by: root <root@c320d4c3c16f>
Co-authored-by: root <root@8bcd4d2873be>
Co-authored-by: root <root@f84528c7f520>
Co-authored-by: root <root@9b081db80ac0>
Co-authored-by: root <root@c55a81492b7a>
Co-authored-by: root <root@8dce36ec7ef6>
Co-authored-by: root <root@bd79e168cfe6>
Co-authored-by: root <root@1dccf7052742>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants