argocd.#Sync now retrieve status

Signed-off-by: Tom Chauveau <tom.chauveau@epitech.eu>
This commit is contained in:
Tom Chauveau 2021-09-10 16:29:29 +02:00 committed by Sam Alba
parent ef112e21ec
commit 733cac09d3
4 changed files with 38 additions and 15 deletions

View File

@ -113,13 +113,25 @@ Sync an application to its targer state
|*config.project* | `*"default" \| string` |ArgoCD project | |*config.project* | `*"default" \| string` |ArgoCD project |
|*config.token* | `dagger.#Secret` |ArgoCD authentication token | |*config.token* | `dagger.#Secret` |ArgoCD authentication token |
|*application* | `string` |ArgoCD application | |*application* | `string` |ArgoCD application |
|*image.config.version* | `*"v2.0.5" \| string` |ArgoCD CLI binary version |
|*image.config.server* | `string` |ArgoCD server |
|*image.config.project* | `*"default" \| string` |ArgoCD project |
|*image.config.token* | `dagger.#Secret` |ArgoCD authentication token |
|*wait* | `*false \| bool` |Wait the application to sync correctly | |*wait* | `*false \| bool` |Wait the application to sync correctly |
|*env.APPLICATION* | `string` |- | |*ctr.image.config.version* | `*"v2.0.5" \| string` |ArgoCD CLI binary version |
|*ctr.image.config.server* | `string` |ArgoCD server |
|*ctr.image.config.project* | `*"default" \| string` |ArgoCD project |
|*ctr.image.config.token* | `dagger.#Secret` |ArgoCD authentication token |
|*ctr.env.APPLICATION* | `string` |- |
|*status.config.version* | `*"v2.0.5" \| string` |ArgoCD CLI binary version |
|*status.config.server* | `string` |ArgoCD server |
|*status.config.project* | `*"default" \| string` |ArgoCD project |
|*status.config.token* | `dagger.#Secret` |ArgoCD authentication token |
|*status.name* | `string` |ArgoCD application |
### argocd.#Sync Outputs ### argocd.#Sync Outputs
_No output._ | Name | Type | Description |
| ------------- |:-------------: |:-------------: |
|*status.outputs.health* | `string` |Application health |
|*status.outputs.sync* | `string` |Application sync state |
|*status.outputs.namespace* | `string` |Namespace |
|*status.outputs.server* | `string` |Server |
|*status.outputs.urls* | `string` |Comma separated list of application URLs |
|*status.outputs.state* | `string` |Last operation state message |

View File

@ -16,7 +16,7 @@ import (
// Wait the application to sync correctly // Wait the application to sync correctly
wait: dagger.#Input & {*false | bool} wait: dagger.#Input & {*false | bool}
os.#Container & { ctr: os.#Container & {
image: #CLI & { image: #CLI & {
"config": config "config": config
} }
@ -33,4 +33,9 @@ import (
env: WAIT_FLAG: "wait" env: WAIT_FLAG: "wait"
} }
} }
status: #Status & {
config: ctr.image.config
name: application
}
} }

View File

@ -34,4 +34,5 @@ TestApp: #App & {
TestArgoCDStatus: #Sync & { TestArgoCDStatus: #Sync & {
config: TestApp.config config: TestApp.config
application: TestApp.name application: TestApp.name
wait: true
} }

View File

@ -237,4 +237,9 @@ setup() {
# Kill Pid # Kill Pid
pgrep kubectl && pkill kubectl pgrep kubectl && pkill kubectl
# Check output
run dagger -e argocd query TestArgoCDStatus.status.outputs.health -f json
assert_success
assert_output "\"Healthy\""
} }