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

Unable to view rollout-extension in ArgoCD Web UI #30

Open
ajatprabha opened this issue Nov 22, 2022 · 8 comments
Open

Unable to view rollout-extension in ArgoCD Web UI #30

ajatprabha opened this issue Nov 22, 2022 · 8 comments

Comments

@ajatprabha
Copy link

I have installed ArgoCD using this helm chart.
I also, installed ArgoRollouts using this helm chart.

Effective setup is:

ArgoCD Version: v2.4.15+05acf7a
ArgoRollouts Version: v1.3.1
ArgoCD Extensions Controller Version: v0.2.1

I also, added the argo-rollouts extension using

kubectl apply -n <ns> \
    -f https://raw.githubusercontent.com/argoproj-labs/rollout-extension/v0.3.0/manifests/install.yaml

Post these steps I was able to see a More tab in the Rollout object window, however, when I click on it, I see
Screenshot 2022-11-22 at 1 19 53 PM

The error log in dev console is
Screenshot 2022-11-22 at 1 20 52 PM

Is the setup incorrect here? I am however able to use the rollouts kubectl plugin to view rollouts dashboard with command:

kubectl argo rollouts dashboard -n <ns>
INFO[0000] Argo Rollouts Dashboard is now available at http://localhost:3100/rollouts
@zachaller
Copy link
Contributor

Can you share your rollouts config?

@ajatprabha
Copy link
Author

Can you share your rollouts config?

Can you elaborate a little on what config you want to take a look at?

The values.yaml used with helm is

controller:
  replicas: 1
  metrics:
    enabled: true
    serviceMonitor:
      enabled: true

The actual service Rollout def (GET: /api/v1/applications/my-service/resource?name=my-service&namespace=default&resourceName=my-service&version=v1alpha1&kind=Rollout&group=argoproj.io) is

apiVersion: argoproj.io/v1alpha1
kind: Rollout
metadata:
  annotations:
    kubectl.kubernetes.io/last-applied-configuration: '{"apiVersion":"argoproj.io/v1alpha1","kind":"Rollout","metadata":{"annotations":{"meta.helm.sh/release-name":"my-service","meta.helm.sh/release-namespace":"default"},"labels":{"app.kubernetes.io/instance":"my-service","app.kubernetes.io/managed-by":"Helm","app.kubernetes.io/name":"service","app.kubernetes.io/version":"1.16.0","helm.sh/chart":"service-1.0.17"},"name":"my-service","namespace":"default"},"spec":{"replicas":1,"revisionHistoryLimit":0,"strategy":{"canary":{"analysis":{"args":[{"name":"namespace","value":"default"},{"name":"instance-name","value":"my-service"},{"name":"http-port","value":"8080"},{"name":"threshold","value":"0.01"}],"templates":[{"templateName":"http-failure-rate"}]},"canaryMetadata":{"annotations":{"role":"canary"},"labels":{"role":"canary"}},"maxSurge":"20%","maxUnavailable":0,"stableMetadata":{"annotations":{"role":"stable"},"labels":{"role":"stable"}},"steps":[{"setWeight":10},{"pause":{"duration":"30s"}},{"setWeight":20},{"pause":{"duration":"30s"}},{"setWeight":50},{"pause":{"duration":"45s"}}]}},"workloadRef":{"apiVersion":"apps/v1","kind":"Deployment","name":"my-service"}}}

      '
    meta.helm.sh/release-name: my-service
    meta.helm.sh/release-namespace: default
    rollout.argoproj.io/revision: '6'
    rollout.argoproj.io/workload-generation: '52'
  creationTimestamp: '2022-11-11T11:18:32Z'
  generation: 3
  labels:
    app.kubernetes.io/instance: my-service
    app.kubernetes.io/managed-by: Helm
    app.kubernetes.io/name: service
    app.kubernetes.io/version: 1.16.0
    helm.sh/chart: service-1.0.17
  managedFields:
    - apiVersion: argoproj.io/v1alpha1
      fieldsType: FieldsV1
      fieldsV1:
        f:metadata:
          f:annotations:
            ".": {}
            f:kubectl.kubernetes.io/last-applied-configuration: {}
            f:meta.helm.sh/release-name: {}
            f:meta.helm.sh/release-namespace: {}
          f:labels:
            ".": {}
            f:app.kubernetes.io/instance: {}
            f:app.kubernetes.io/managed-by: {}
            f:app.kubernetes.io/name: {}
            f:app.kubernetes.io/version: {}
            f:helm.sh/chart: {}
        f:spec:
          ".": {}
          f:revisionHistoryLimit: {}
          f:strategy:
            ".": {}
            f:canary:
              ".": {}
              f:analysis:
                ".": {}
                f:args: {}
                f:templates: {}
              f:canaryMetadata:
                ".": {}
                f:annotations:
                  ".": {}
                  f:role: {}
                f:labels:
                  ".": {}
                  f:role: {}
              f:maxSurge: {}
              f:maxUnavailable: {}
              f:stableMetadata:
                ".": {}
                f:annotations:
                  ".": {}
                  f:role: {}
                f:labels:
                  ".": {}
                  f:role: {}
              f:steps: {}
          f:workloadRef:
            ".": {}
            f:apiVersion: {}
            f:kind: {}
            f:name: {}
      manager: argocd-application-controller
      operation: Update
      time: '2022-11-11T11:18:32Z'
    - apiVersion: argoproj.io/v1alpha1
      fieldsType: FieldsV1
      fieldsV1:
        f:metadata:
          f:annotations:
            f:rollout.argoproj.io/revision: {}
            f:rollout.argoproj.io/workload-generation: {}
      manager: rollouts-controller
      operation: Update
      time: '2022-11-11T11:18:32Z'
    - apiVersion: argoproj.io/v1alpha1
      fieldsType: FieldsV1
      fieldsV1:
        f:status:
          ".": {}
          f:HPAReplicas: {}
          f:availableReplicas: {}
          f:blueGreen: {}
          f:canary: {}
          f:conditions: {}
          f:currentPodHash: {}
          f:currentStepHash: {}
          f:currentStepIndex: {}
          f:observedGeneration: {}
          f:phase: {}
          f:readyReplicas: {}
          f:replicas: {}
          f:selector: {}
          f:stableRS: {}
          f:updatedReplicas: {}
          f:workloadObservedGeneration: {}
      manager: rollouts-controller
      operation: Update
      subresource: status
      time: '2022-11-22T09:25:25Z'
  name: my-service
  namespace: default
  resourceVersion: '198691285'
  uid: 198f274a-caaf-44b7-b6c0-d7afc5b568c6
spec:
  replicas: 3
  revisionHistoryLimit: 0
  strategy:
    canary:
      analysis:
        args:
          - name: namespace
            value: default
          - name: instance-name
            value: my-service
          - name: http-port
            value: '8080'
          - name: threshold
            value: '0.01'
        templates:
          - templateName: http-failure-rate
      canaryMetadata:
        annotations:
          role: canary
        labels:
          role: canary
      maxSurge: 20%
      maxUnavailable: 0
      stableMetadata:
        annotations:
          role: stable
        labels:
          role: stable
      steps:
        - setWeight: 10
        - pause:
            duration: 30s
        - setWeight: 20
        - pause:
            duration: 30s
        - setWeight: 50
        - pause:
            duration: 45s
  workloadRef:
    apiVersion: apps/v1
    kind: Deployment
    name: my-service
status:
  HPAReplicas: 3
  availableReplicas: 3
  blueGreen: {}
  canary: {}
  conditions:
    - lastTransitionTime: '2022-11-21T09:33:02Z'
      lastUpdateTime: '2022-11-21T09:33:02Z'
      message: Rollout is paused
      reason: RolloutPaused
      status: 'False'
      type: Paused
    - lastTransitionTime: '2022-11-21T09:33:22Z'
      lastUpdateTime: '2022-11-21T09:33:22Z'
      message: RolloutCompleted
      reason: RolloutCompleted
      status: 'True'
      type: Completed
    - lastTransitionTime: '2022-11-22T09:25:25Z'
      lastUpdateTime: '2022-11-22T09:25:25Z'
      message: Rollout is healthy
      reason: RolloutHealthy
      status: 'True'
      type: Healthy
    - lastTransitionTime: '2022-11-21T09:33:02Z'
      lastUpdateTime: '2022-11-22T09:25:25Z'
      message: ReplicaSet "my-service-7b677b7dc7" has successfully progressed.
      reason: NewReplicaSetAvailable
      status: 'True'
      type: Progressing
    - lastTransitionTime: '2022-11-22T09:25:25Z'
      lastUpdateTime: '2022-11-22T09:25:25Z'
      message: Rollout has minimum availability
      reason: AvailableReason
      status: 'True'
      type: Available
  currentPodHash: 7b677b7dc7
  currentStepHash: 59546c455
  currentStepIndex: 6
  observedGeneration: '3'
  phase: Healthy
  readyReplicas: 3
  replicas: 3
  selector: app.kubernetes.io/instance=my-service,app.kubernetes.io/name=service
  stableRS: 7b677b7dc7
  updatedReplicas: 3
  workloadObservedGeneration: '52'

@zachaller
Copy link
Contributor

Can you try with a the most recent version of the extension?

@ajatprabha
Copy link
Author

@zachaller I tried with v0.3.0 only, on the Releases page, it is the latest version. Am I missing something here?

@zachaller
Copy link
Contributor

Nope sorry I was mixing up two issues, issue #33 and this looks like there might still be another issue on v0.3.0 as well will keep this open

@dfl-aeb
Copy link

dfl-aeb commented Apr 20, 2023

We could fix it by changing the version in the install.yaml file to the new release url:
https://github.com/argoproj-labs/rollout-extension/releases/download/v0.3.0/extension.tar

@rjanovski
Copy link

it only fails for us when using a workloadRef pointing to another deployment.
if using the rollout without an external deployment it works fine.

@EHSchmitt4395
Copy link

EHSchmitt4395 commented Jul 5, 2023

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants