Commit graph

106 commits

Author SHA1 Message Date
Alexander Matyushentsev
9bf7ae378f
refactor: upgrade helm to 3.5.1 (#5385)
Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
2021-02-02 16:07:13 -08:00
jannfis
f7c2b886db
chore: Bring back kubectl to test-tools-image (#5369)
Signed-off-by: jannfis <jann@mistrust.net>
2021-02-01 17:58:15 -08:00
Abhishek Veeramalla
eaf9887d17
fix: Remove kubectl binary from argo image(#5005) (#5101)
Signed-off-by: iam-veeramalla <abhishek.veeramalla@gmail.com>
2021-01-21 09:49:51 -08:00
jannfis
ffb8ce22ee
chore: Change installation manifests to pull images from quay.io (#5227)
* chore: Update manifests to point to quay.io

Signed-off-by: jannfis <jann@mistrust.net>

* Set image also in kustomize bases

Signed-off-by: jannfis <jann@mistrust.net>

* make manifests

Signed-off-by: jannfis <jann@mistrust.net>

* Also update for Dex init container

Signed-off-by: jannfis <jann@mistrust.net>

* Adapt upgrade docs to reflect new registry

Signed-off-by: jannfis <jann@mistrust.net>
2021-01-11 22:28:16 +01:00
Alexander Matyushentsev
dfcbddf605
refactor: upgrade gitops-engine and k8s deps to v0.20.1 (#5194)
Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
2021-01-06 00:07:46 -08:00
jannfis
b955c6a7a4
chore: Update grpc-gateway to v1.16.0 (#5011)
Signed-off-by: jannfis <jann@mistrust.net>
2020-12-09 20:33:54 +01:00
Alexander Matyushentsev
6e1649b1e2
refactor: upgrade helm to v3.4.1 (#4938)
Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
2020-12-01 09:34:21 -08:00
Alexander Matyushentsev
da3ab59be0
refactor: upgrade helm to v3.4.0 (#4745)
Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
2020-11-03 11:48:00 -08:00
Isaac Gaskin
858676c4f8
chore: helm2 verison bump (#4724)
* chore: helm2 verison bump
2020-11-03 11:22:14 -08:00
Alexander Matyushentsev
2a0012d5f1
refactor: upgrade k8s client to v0.19.2 (#4545) 2020-10-13 13:01:26 -07:00
Alexander Matyushentsev
3850e80040
fix: swagger UI stuck loading (#4377) 2020-09-18 15:39:56 -07:00
Chance Zibolski
b1e3036bc2
chore: Update helm3 to 3.3.1 (#4323) 2020-09-14 14:28:33 -07:00
jannfis
41ca6b2ada
chore: Upgrade installation manifests & codegen to Kustomize 3 (#3347)
* Use kustomize v3 to build ArgoCD manifests

* Update to test-tools-image v0.3.0

* Reorder patches so Kustomize v3 will properly find targets

* adding back these changes

* Use the generated files.

* changed the namespace

* changed kustomize version to 3.8.1 to be in sync with the one in tool-version.sh

* revert changes in makefile

* Re-run codegen

Co-authored-by: Zhang <may_zhang@intuit.com>
Co-authored-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
2020-09-09 15:31:33 -07:00
Sayak Mukhopadhyay
aa2762a9b7
fix: Added cluster authentication to AKS clusters (#4265) 2020-09-07 19:53:33 -07:00
James Callahan
e10c20f683
chore: update to kustomize 3.8.1 (#4130) 2020-09-02 14:01:35 -07:00
Alexander Matyushentsev
569a2a6bc6
fix: Unable to create project JWT token on K8S v1.15 (#4165) 2020-08-26 10:31:52 -07:00
Alexander Matyushentsev
ee57ded16f
refactor: upgrade K8S client to v0.18.8 (#4149) 2020-08-24 16:46:38 -07:00
Alexander Matyushentsev
ba71ad934c
refactor: upgrade k8s client to 1.18 (#4046)
* refactor: upgrade k8s client to 1.18

* remove unnecessary go mod replacements
2020-08-05 11:36:40 -07:00
Alexander Matyushentsev
c8def406b0
refactor: upgrade gitops engine (#3962) 2020-07-20 10:11:17 -07:00
Darshan Chaudhary
921606169a
chore: bump up k8s.io dependencies to 1.17 (#3899)
chore: bump up k8s.io dependencies to 1.17 (#3899)

Signed-off-by: darshanime <deathbullet@gmail.com>
2020-07-09 13:38:32 -07:00
Alin Balutoiu
a4815e0f8a
fix: Update dependencies built from source for ARM (#3909)
Signed-off-by: Alin Balutoiu <alinbalutoiu@gmail.com>
2020-07-09 09:55:49 -07:00
jannfis
be718e2b61
feat: GPG commit signature verification (#2492) (#3242)
* Add initial primitives and tests for GPG related operations

* More tests and test documentation

* Move gpg primitives to own module

* Add initial primitives for running git verify-commit and tests

* Improve and better comment test

* Implement VerifyCommitSignature() primitive for metrics wrapper

* More commentary

* Make reposerver verify gpg signatures when generating manifests

* Make signature validation optional

* Forbid use of local manifests when signature verification is enabled

* Introduce new signatureKeys field in project CRD

* Initial support for only syncing against signed revisions

* Updates to GnuPG primitives and more test cases

* Move signature verification to correct place and add tests

* Add signature verification result to revision metadata and display it in UI

* Add more primitives and move out some stuff to common module

* Add more testdata

* Add key management primitives to ArgoDB

* Move type GnuPGPublicKey to appsv1 package

* Add const ArgoCDGPGKeysConfigMapName

* Handle key operations with appsv1.GnuPGPublicKey

* Add initial API for managing GPG keys

* Remove deprecated code

* Add primitives for adding public keys to configuration

* Change semantics of ValidateGPGKeys to return more key information

* Add key import functionality to public key API

* Fix code quirks reported by linter

* More code quirks fixes

* Fix test

* Add primitives for deleting keys from configuration

* Add delete key operation to API and CLI

* Cosmetics

* Implement logic to sync configuration to keyring in repo-server

* Add IsGPGEnabled() primitive and also update trustdb on ownertrust changes

* Use gpg.IsGPGEnabled() instead of custom test

* Remove all keyring manipulating methods from DB

* Cosmetics/comments

* Require grpc methods from argoproj pkg

* Enable setting config path via ARGOCD_GPG_DATA_PATH

* Allow "no" and any cases in ARGOCD_GPG_ENABLED

* Enable GPG feature on start and start-e2e and set required environment

* Cosmetics/comments

* Cosmetics and commentary

* Update API documentation

* Fix comment

* Only run GPG related operations if GPG is enabled

* Allow setting ARGOCD_GPG_ENABLE from the environment

* Create GPG ConfigMap resource during installation

* Use function instead of constant to get the watcher path

* Re-watch source path in case it gets recreated. Also, error on finish

* Add End-to-End tests for GPG commit verification

* Introduce SignatureKey type for AppProject CRD

* Fix merge error from previous commit

* Adapt test for additional manifest (argocd-gpg-keys-cm.yaml)

* Fix linter issues

* Adapt CircleCI configuration to enable running tests

* Add wrapper scripts for git and gpg

* Sigh.

* Display gpg version in CircleCI

* Install gnupg2 and link it to gpg in CI

* Try to install gnupg2 in CircleCI image

* More CircleCI tweaks

* # This is a combination of 10 commits.
# This is the 1st commit message:

Containerize tests - test cycle

# This is the commit message #2:

adapt working directory

# This is the commit message #3:

Build before running tests (so we might have a cache)

# This is the commit message #4:

Test limiting parallelism

# This is the commit message #5:

Remove unbound variable

# This is the commit message #6:

Decrease parallelism to find out limit

# This is the commit message #7:

Use correct flag

# This is the commit message #8:

Update Docker image

# This is the commit message #9:

Remove build phase and increase parallelism

# This is the commit message #10:

Further increase parallelism

* Dockerize toolchain

* Add new targets to Makefile

* Codegen

* Properly handle permissions for E2E tests

* Remove gnupg2 installation from CircleCI configuration

* Limit parallelism of build

* Fix Yarn lint

* Retrigger CI for possible flaky test

* Codegen

* Remove duplicate target in Makefile

* Pull in pager from dep ensure -v

* Adapt to gitops-engine changes and codegen

* Use new health package for health status constants

* Add GPG methods to ArgoDB mock module

* Fix possible nil pointer dereference

* Fix linter issue in imports

* Introduce RBAC resource type 'gpgkeys' and adapt policies

* Use ARGOCD_GNUPGHOME instead of GNUPGHOME for subsystem configuration

Also remove some deprecated unit tests.

* Also register GPG keys API with gRPC-GW

* Update from codegen

* Update GPG key API

* Add web UI to manage GPG keys

* Lint updates

* Change wording

* Add some plausibility checks for supplied data on key creation

* Update from codegen

* Re-allow binary keys and move check for ASCII armoured to UI

* Make yarn lint happy

* Add editing signature keys for projects in UI

* Add ability to configure signature keys for project in CLI

* Change default value to use for GNUPGHOME

* Do not include data section in default gpg keys CM

* Adapt Docker image for GnuPG feature

* Add required configuration to installation manifests

* Add add-signature-key and remove-signature-key commands to project CLI

* Fix typo

* Add initial user documentation for GnuPG verification

* Fix role name - oops

* Mention required RBAC roles in docs

* Support GPG verification of git annotated tags as well

* Ensure CLI can build succesfully

* Better support verification on tags

* Print key type in upper case

* Update user documentation

* Correctly disable GnuPG verification if ARGOCD_GPG_ENABLE=false

* Clarify that this feature is only available with Git repositories

* codegen

* Move verification code to own function

* Remove deprecated check

* Make things more developer friendly when running locally

* Enable GPG feature by default, and don't require ARGOCD_GNUPGHOME to be set

* Revert changes to manifests to reflect default enable state

* Codegen
2020-06-22 18:21:53 +02:00
Alexander Matyushentsev
49b6157308
chore: implement development helpers that mount config maps to local folder (#3796) 2020-06-19 12:27:39 -07:00
Alexander Matyushentsev
6036ff8afd
chore: fix tag matching in trigger-release.sh script (#3785) 2020-06-17 08:59:08 +02:00
Alexander Matyushentsev
3117a2c3b5
chore: trigger-release should not fail if commentChar not configured (#3740) 2020-06-09 23:59:39 +02:00
jannfis
b6e2d5a430
chore: Introduce release automation (#3711)
* chore: Introduce release automation
2020-06-09 12:05:52 -07:00
Alexander Matyushentsev
4a6fe4cd31
feat: upgrade kustomize to v3.6.1 version (#3696) 2020-06-02 09:37:10 -07:00
jannfis
80515a3b57
chore: Migrate CI toolchain to GitHub actions (#3677)
* chore: Migrate CI to GitHub actions

* Do not install golangci-lint, we use the action

* Integrate codecov.io upload

* Use some better names for analyze job & steps

* go mod tidy

* Update tools

* Disable CircleCI completely

* Satisfy CircleCI with a dummy step until it's disabled
2020-05-31 23:11:28 +02:00
Alin Balutoiu
00f99edf1a
feat: Add build support for ARM images (#3554)
Signed-off-by: Alin Balutoiu <alinbalutoiu@gmail.com>
2020-05-31 19:31:29 +02:00
Josh Soref
a724574ede
chore: Spelling (#3647)
chore: Spelling (#3647)
2020-05-27 10:22:13 -07:00
jannfis
23bf07d206
chore: Migrate to Go modules (#3639)
* chore: Migrate to Go modules

* Update CircleCI config

* Fix path

* Attach vendor for test step correctly

* restore_vendor -> attach_vendor

* Update cache path

* Checkout code before attaching vendor

* Move checkout to even earlier in job

* Don't restore cache for e2e step

* .

* Explicitly set GOPATH

* Restore Build cache

* Fix permissions

* Set correct environment for docker env

* Uncache everything

* Fix permissions

* Use workspace for caching Go code

* .

* go mod tidy

* Try to speed up builds

* Make mod target implicit dependencies

* Do not call make mod-download or mod-vendor

* Fix permissions

* Don't have modules dependendencies on test-e2e-local

* Fix confgi

* Bye bye

* Remove test parallelism

* Get max test parallelism back in, but with lower value
2020-05-26 18:15:38 +02:00
Chance Zibolski
40eb8c79ab
feat: Upgrade kustomize to 3.5.5 (#3619)
* feat: Upgrade kustomize to 3.5.5
2020-05-20 19:24:25 -07:00
Alexander Matyushentsev
fe8d47e0ea
feat: move engine code to argoproj/gitops-engine repo (#3599) 2020-05-15 14:39:29 -07:00
Alexander Matyushentsev
192ee93fc4
feat: Gitops engine (#3066)
* Move utils packages that are required for gitops engine under engine/pkg/utils package.
Following changes were implemented:
* util/health package is split into two parts: resource health assessement & resource health assessement and moved into engine/pkg/utils
* utils packages moved: Closer and Close method of util package moved into engine/pkg/utils/io package
* packages diff, errors, exec, json, kube and tracing moved into engine/pkg/utils

* Move single cluster caching into engine/kube/cache package

* move sync functionality to engine/kube/sync package

* remove dependency on metrics package from engine/pkg/utils/kube/cache

* move annotation label definitions into engine/pkg/utils/kube/sync

* make sure engine/pkg has no dependencies on other argo-cd packages

* allow importing engine as a go module

* implement a high-level interface that might be consumed by flux

* fix deadlock caused by cluster cache event handler

* ClusterCache should return error if requested group kind not found

* remove obsolete tests

* apply reviewer notes
2020-05-15 10:01:18 -07:00
Alexander Matyushentsev
31df9d11a9
feat: upgrade helm 3 to v3.2.0; user --insecure-verify-flag (#3514) 2020-04-29 21:04:25 -07:00
Alexander Matyushentsev
4ae70139d9
feat: upgrade kustomize version to 3.5.4 (#3472) 2020-04-23 10:29:15 -07:00
jannfis
8ad928330f
chore: Fix a bunch of lint issues (#3412)
* chore: Fix linter complaints
2020-04-14 08:01:43 -07:00
Alexander Matyushentsev
5448466ddc
feat: support normalizing CRD fields that use known built-in K8S types (#3357)
* feat: support normalizing CRD fields that use known built-in K8S types

* apply reviewers notes

* fix codegen
2020-04-06 21:13:50 +02:00
jannfis
27141ff083
chore: Containerize complete build & test toolchain (#3245)
chore: Containerize complete build & test toolchain
2020-03-27 11:36:20 -07:00
Jesse Suen
476b09cbbf
feat: improve api-server and controller performance (#3222)
* group read comparison settings during app reconciliation
* Reduce lock contention in clusterInfo::ensureSynced(). Add getRepoObj stats
* Remove additional source of lock contention
* Exclude the coordination.k8s.io/Lease resource

Co-authored-by: Alexander Matyushentsev <amatyushentsev@gmail.com>
2020-03-16 11:51:59 -07:00
Alexander Matyushentsev
b38a9aacb2
fix: codegen task is broken locally (#3200) 2020-03-06 12:51:03 -08:00
Alexander Matyushentsev
6edd18bb89
feat: support helm3 (#2383) (#3178)
* feat: support helm3 (#2383)

* draft

* Apply reviewer notes
2020-03-04 17:05:44 +01:00
Dai Kurosawa
5a363e9d9f
Update Go version from v1.13.8 to v1.14.0 (#3162) 2020-02-28 08:42:56 -08:00
Dai Kurosawa
64c8ac70fb
Update Go version from v1.13.7 to v1.13.8 (#3129) 2020-02-17 22:42:19 +01:00
Dai Kurosawa
1801212ac7
chore: Upgrade Go version from v1.13.6 to v1.13.7 (#3056) 2020-01-31 22:00:43 +01:00
Alexander Matyushentsev
a3f8ec33f4
chore: fix codegen-local (#3053) 2020-01-29 20:00:32 +01:00
Sean Dukehart
57eeaa4231
Changes to enable helm --set-file (#2752)
Necessary STDIN changes to support Windows

Added support for SE Linux

Informational message about linting OOM

Updated due to latest helm stable being 3.x
2020-01-29 08:26:05 -08:00
Joseph Mulloy
3c6715a6f9 fix: Replace aws-iam-authenticator to support IRSA (#3010)
Replace aws-iam-authenticator with aws cli to support EKS cluster auth
via IAM Roles for Service Accounts (IRSA)

See https://aws.amazon.com/blogs/opensource/introducing-fine-grained-iam-roles-service-accounts/
2020-01-24 10:32:33 -08:00
Dai Kurosawa
ad715565a6 Upgrade Go version from v1.12.6 to v1.13.6 (#2994) 2020-01-23 10:11:01 -08:00
Jesse Suen
0ea0404044
Update k8s dependency to v1.16 (#2828) 2019-12-10 18:33:58 -08:00