Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
55 commits
Select commit Hold shift + click to select a range
ffae897
Initial support for managing repo credentials via CLI
jannfis Aug 23, 2019
a97f049
Merge branch 'master' of https://github.com/argoproj/argo-cd into 213…
jannfis Aug 23, 2019
27718b1
Codegen
jannfis Aug 23, 2019
106bda6
Adapt unit tests to new semantics
jannfis Aug 23, 2019
4ece5cc
Adapt comments in repository.proto
jannfis Aug 23, 2019
c9968ee
Workaround some race condition in K8s fake clientset
jannfis Aug 23, 2019
ed5cbb1
Also copy repository settings when creating
jannfis Aug 23, 2019
d992570
Merge branch 'master' of https://github.com/argoproj/argo-cd into 213…
jannfis Aug 23, 2019
af56b7d
Add test for repo.CopySettingsFrom()
jannfis Aug 23, 2019
813036b
Add tests for repo.IsInsecure() and repo.IsLFSEnabled()
jannfis Aug 23, 2019
3236790
Return InheritedCreds property to API client in ListRepositories()
jannfis Aug 24, 2019
3194caf
Change output of repo list to display whether a repo has creds config…
jannfis Aug 24, 2019
38d0add
Enable longest match instead of first on repo credential lookup
jannfis Aug 26, 2019
d5e817f
Adapt tests for getRepositoryCredentialIndex() to new semantics
jannfis Aug 26, 2019
b2c7d1c
Add and adapt End-to-End tests for credential management and repo access
jannfis Aug 26, 2019
45105a5
Change REST resource names for credentials to be non-ambigous
jannfis Aug 26, 2019
2a72546
Even better REST paths for repo creds without introducing new top lev…
jannfis Aug 26, 2019
7c2ce63
Basic functionality for managing repo credentials via web UI
jannfis Aug 26, 2019
bd85463
Cosmetics
jannfis Aug 27, 2019
bae9c1e
Document repository credential management
jannfis Aug 27, 2019
49fe1b2
Merge branch 'master' of https://github.com/argoproj/argo-cd into 213…
jannfis Aug 27, 2019
917f20b
Pre-commit
jannfis Aug 27, 2019
392eb31
Merge branch 'master' of https://github.com/argoproj/argo-cd into 213…
jannfis Sep 23, 2019
e3659a6
Cleanup after merging master
jannfis Sep 23, 2019
c55a7f7
Merge branch 'master' of https://github.com/argoproj/argo-cd into 213…
jannfis Sep 27, 2019
332a825
Remaining merge
jannfis Sep 27, 2019
9eec546
Codegen
jannfis Sep 27, 2019
cfe1254
Merge branch 'master' of https://github.com/argoproj/argo-cd into 213…
jannfis Sep 27, 2019
543a3eb
Retrigger CI
jannfis Sep 27, 2019
8a8f9c7
Move --credsonly functionality from repo to repocreds command
jannfis Sep 28, 2019
017b48c
Make E2E tests also use "repocreds", not "repo --creds", when calling…
jannfis Sep 28, 2019
e1e25a9
Use HasCredentials() to check whether repo has creds
jannfis Sep 30, 2019
215252a
Don't copy settings along with credentials
jannfis Sep 30, 2019
838c005
Update user documentation
jannfis Sep 30, 2019
0930164
Adapt usage info and remove dead code
jannfis Sep 30, 2019
8d84d65
Remove unused variables
jannfis Sep 30, 2019
fc32969
Rename --force-refresh to --refresh and make it parametrisable
jannfis Sep 30, 2019
9ecac12
Error out on invalid refresh mode
jannfis Sep 30, 2019
083a0fb
Also copy repo settings
jannfis Sep 30, 2019
a558ccd
Adapt tests to reality
jannfis Sep 30, 2019
45f4e0f
Merge branch 'master' of https://github.com/argoproj/argo-cd into 213…
jannfis Oct 1, 2019
49591bf
Codegen
jannfis Oct 1, 2019
45cabd2
Merge branch 'master' of https://github.com/argoproj/argo-cd into 213…
jannfis Oct 1, 2019
ffc39f8
Only copy credentials if none were set in source
jannfis Oct 2, 2019
8422853
Merge branch 'master' of https://github.com/argoproj/argo-cd into 213…
jannfis Oct 2, 2019
a3c69d8
Codegen
jannfis Oct 2, 2019
ea4ee8b
Do not copy repo settings in CopyCredentialsFrom()
jannfis Oct 2, 2019
12e5181
Merge branch 'master' of https://github.com/argoproj/argo-cd into 213…
jannfis Oct 3, 2019
d727681
Say hello to RepoCredsService
jannfis Oct 4, 2019
2de337e
Merge branch 'master' into 2136-creds-management
jannfis Oct 4, 2019
90058c0
UI implementation fixes and refactoring of service
jannfis Oct 5, 2019
d4f4244
Remove debug statements and outcommented code
jannfis Oct 5, 2019
3ee94b9
Fix data structures
jannfis Oct 5, 2019
533b0c6
Correctly refresh creds after creation
jannfis Oct 5, 2019
9584f52
Merge branch 'master' into 2136-creds-management
alexec Oct 16, 2019
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
217 changes: 197 additions & 20 deletions assets/swagger.json
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@
"ApplicationService"
],
"summary": "List returns list of applications",
"operationId": "ListMixin7",
"operationId": "ListMixin8",
"parameters": [
{
"type": "string",
Expand Down Expand Up @@ -99,7 +99,7 @@
"ApplicationService"
],
"summary": "Create creates an application",
"operationId": "CreateMixin7",
"operationId": "CreateMixin8",
"parameters": [
{
"name": "body",
Expand All @@ -126,7 +126,7 @@
"ApplicationService"
],
"summary": "Update updates an application",
"operationId": "UpdateMixin7",
"operationId": "UpdateMixin8",
"parameters": [
{
"type": "string",
Expand Down Expand Up @@ -207,7 +207,7 @@
"ApplicationService"
],
"summary": "Get returns an application by name",
"operationId": "GetMixin7",
"operationId": "GetMixin8",
"parameters": [
{
"type": "string",
Expand Down Expand Up @@ -257,7 +257,7 @@
"ApplicationService"
],
"summary": "Delete deletes an application",
"operationId": "DeleteMixin7",
"operationId": "DeleteMixin8",
"parameters": [
{
"type": "string",
Expand Down Expand Up @@ -1051,7 +1051,7 @@
"ProjectService"
],
"summary": "List returns list of projects",
"operationId": "ListMixin5",
"operationId": "ListMixin6",
"parameters": [
{
"type": "string",
Expand All @@ -1073,7 +1073,7 @@
"ProjectService"
],
"summary": "Create a new project.",
"operationId": "CreateMixin5",
"operationId": "CreateMixin6",
"parameters": [
{
"name": "body",
Expand All @@ -1100,7 +1100,7 @@
"ProjectService"
],
"summary": "Get returns a project by name",
"operationId": "GetMixin5",
"operationId": "GetMixin6",
"parameters": [
{
"type": "string",
Expand All @@ -1123,7 +1123,7 @@
"ProjectService"
],
"summary": "Delete deletes a project",
"operationId": "DeleteMixin5",
"operationId": "DeleteMixin6",
"parameters": [
{
"type": "string",
Expand Down Expand Up @@ -1198,7 +1198,7 @@
"ProjectService"
],
"summary": "Update updates a project",
"operationId": "UpdateMixin5",
"operationId": "UpdateMixin6",
"parameters": [
{
"type": "string",
Expand Down Expand Up @@ -1302,18 +1302,134 @@
}
}
},
"/api/v1/repocreds": {
"get": {
"tags": [
"RepoCredsService"
],
"summary": "ListRepositoryCredentials gets a list of all configured repository credential sets",
"operationId": "ListRepositoryCredentials",
"parameters": [
{
"type": "string",
"description": "Repo URL for query.",
"name": "url",
"in": "query"
}
],
"responses": {
"200": {
"description": "(empty)",
"schema": {
"$ref": "#/definitions/v1alpha1RepoCredsList"
}
}
}
},
"post": {
"tags": [
"RepoCredsService"
],
"summary": "CreateRepositoryCredentials creates a new repository credential set",
"operationId": "CreateRepositoryCredentials",
"parameters": [
{
"name": "body",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/v1alpha1RepoCreds"
}
}
],
"responses": {
"200": {
"description": "(empty)",
"schema": {
"$ref": "#/definitions/v1alpha1RepoCreds"
}
}
}
}
},
"/api/v1/repocreds/{creds.url}": {
"put": {
"tags": [
"RepoCredsService"
],
"summary": "UpdateRepositoryCredentials updates a repository credential set",
"operationId": "UpdateRepositoryCredentials",
"parameters": [
{
"type": "string",
"name": "creds.url",
"in": "path",
"required": true
},
{
"name": "body",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/v1alpha1RepoCreds"
}
}
],
"responses": {
"200": {
"description": "(empty)",
"schema": {
"$ref": "#/definitions/v1alpha1RepoCreds"
}
}
}
}
},
"/api/v1/repocreds/{url}": {
"delete": {
"tags": [
"RepoCredsService"
],
"summary": "DeleteRepositoryCredentials deletes a repository credential set from the configuration",
"operationId": "DeleteRepositoryCredentials",
"parameters": [
{
"type": "string",
"name": "url",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "(empty)",
"schema": {
"$ref": "#/definitions/repocredsRepoCredsResponse"
}
}
}
}
},
"/api/v1/repositories": {
"get": {
"tags": [
"RepositoryService"
],
"summary": "List returns list of repos",
"operationId": "ListMixin3",
"summary": "ListRepositories gets a list of all configured repositories",
"operationId": "ListRepositories",
"parameters": [
{
"type": "string",
"description": "Repo URL for query.",
"name": "repo",
"in": "query"
},
{
"type": "boolean",
"format": "boolean",
"description": "Whether to force a cache refresh on repo's connection state.",
"name": "forceRefresh",
"in": "query"
}
],
"responses": {
Expand All @@ -1329,8 +1445,8 @@
"tags": [
"RepositoryService"
],
"summary": "Create creates a repo",
"operationId": "CreateMixin3",
"summary": "CreateRepository creates a new repository configuration",
"operationId": "CreateRepository",
"parameters": [
{
"name": "body",
Expand All @@ -1356,8 +1472,8 @@
"tags": [
"RepositoryService"
],
"summary": "Update updates a repo",
"operationId": "UpdateMixin3",
"summary": "UpdateRepository updates a repository configuration",
"operationId": "UpdateRepository",
"parameters": [
{
"type": "string",
Expand Down Expand Up @@ -1389,8 +1505,8 @@
"tags": [
"RepositoryService"
],
"summary": "Delete deletes a repo",
"operationId": "DeleteMixin3",
"summary": "DeleteRepository deletes a repository from the configuration",
"operationId": "DeleteRepository",
"parameters": [
{
"type": "string",
Expand Down Expand Up @@ -1451,6 +1567,13 @@
"name": "repo",
"in": "path",
"required": true
},
{
"type": "boolean",
"format": "boolean",
"description": "Whether to force a cache refresh on repo's connection state.",
"name": "forceRefresh",
"in": "query"
}
],
"responses": {
Expand Down Expand Up @@ -1535,7 +1658,7 @@
"SessionService"
],
"summary": "Create a new JWT for authentication and set a cookie if using HTTP.",
"operationId": "CreateMixin9",
"operationId": "CreateMixin10",
"parameters": [
{
"name": "body",
Expand All @@ -1560,7 +1683,7 @@
"SessionService"
],
"summary": "Delete an existing JWT cookie if using HTTP.",
"operationId": "DeleteMixin9",
"operationId": "DeleteMixin10",
"responses": {
"200": {
"description": "(empty)",
Expand Down Expand Up @@ -2060,6 +2183,10 @@
}
}
},
"repocredsRepoCredsResponse": {
"type": "object",
"title": "RepoCredsResponse is a resonse to most repository credentials requests"
},
"repositoryAppInfo": {
"type": "object",
"title": "AppInfo contains application type and app file path",
Expand Down Expand Up @@ -3522,6 +3649,51 @@
}
}
},
"v1alpha1RepoCreds": {
"type": "object",
"title": "RepoCreds holds a repository credentials definition",
"properties": {
"password": {
"type": "string",
"title": "Password for authenticating at the repo server"
},
"sshPrivateKey": {
"type": "string",
"title": "SSH private key data for authenticating at the repo server (only Git repos)"
},
"tlsClientCertData": {
"type": "string",
"title": "TLS client cert data for authenticating at the repo server"
},
"tlsClientCertKey": {
"type": "string",
"title": "TLS client cert key for authenticating at the repo server"
},
"url": {
"type": "string",
"title": "URL is the URL that this credentials matches to"
},
"username": {
"type": "string",
"title": "Username for authenticating at the repo server"
}
}
},
"v1alpha1RepoCredsList": {
"description": "RepositoryList is a collection of Repositories.",
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"$ref": "#/definitions/v1alpha1RepoCreds"
}
},
"metadata": {
"$ref": "#/definitions/v1ListMeta"
}
}
},
"v1alpha1Repository": {
"type": "object",
"title": "Repository is a repository holding application configurations",
Expand All @@ -3534,6 +3706,11 @@
"format": "boolean",
"title": "Whether git-lfs support should be enabled for this repo"
},
"inheritedCreds": {
"type": "boolean",
"format": "boolean",
"title": "Whether credentials were inherited from a credential set"
},
"insecure": {
"type": "boolean",
"format": "boolean",
Expand Down
Loading