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

End to End Test Course Yamls #28

Closed
endzyme opened this issue Jan 4, 2019 · 3 comments
Closed

End to End Test Course Yamls #28

endzyme opened this issue Jan 4, 2019 · 3 comments
Labels

Comments

@endzyme
Copy link
Contributor

endzyme commented Jan 4, 2019

It would be great to have some tests for specific features in course.yml or at least basic and complex course.yml files for running blackbox end-to-end testing.

These would also be useful for testing the CLI contracts of providing files and command line arguments.

Vision:

  • test_basic_course.yml (installs one chart with only variables and no helm default args)
  • test_advanced_course.yml (installs two+ charts with values, yaml files, string-values, etc)

Deliverable

  • Just the course yaml files that can be run locally for manual testing (figure out automation later)
@endzyme endzyme added this to the Improve Usability and Maintainability milestone Jan 4, 2019
@stale
Copy link

stale bot commented Mar 5, 2019

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the wontfix This will not be worked on label Mar 5, 2019
@endzyme endzyme removed the wontfix This will not be worked on label Mar 6, 2019
@endzyme
Copy link
Contributor Author

endzyme commented Apr 11, 2019

#88 Starts this process - i will leave this issue open to collect some example tests cases for regression testing.

@endzyme
Copy link
Contributor Author

endzyme commented Apr 11, 2019

repository: stable
minimum_versions:
  helm: 2.13.1
  reckoner: 1.0.1
helm_args:
  - --recreate-pods
repositories:
  incubator:
    url: https://kubernetes-charts-incubator.storage.googleapis.com
  stable:
    url: https://kubernetes-charts.storage.googleapis.com
  reactiveops-stable:
    url: https://charts.reactiveops.com/stable
  reactiveops-incubator:
    url: https://charts.reactiveops.com/incubator
charts:
  metrics-server:
    namespace: metrics-server
    version: "2.4.0"
    hooks:
      pre_install:
        - kubectl create ns metrics-server || true
        - kubectl annotate ns metrics-server --overwrite linkerd.io/inject=enabled --overwrite
    set-values:
      args:
        - --kubelet-insecure-tls
        - --kubelet-preferred-address-types=InternalIP
        - --metric-resolution=30s
        - --v=3
  rbac-manager:
    namespace: rbac-manager
    version: 0.2.1
    repository: reactiveops-stable
    hooks:
      pre_install:
        - kubectl create ns rbac-manager || true
        - kubectl annotate ns rbac-manager --overwrite linkerd.io/inject=enabled
        - kubectl annotate ns rbac-manager image-whitelist='^quay/.+' --overwrite
      post_install:
      - kubectl apply -f rbacdefinition.yaml
  nginx-ingress:
    chart: nginx-ingress
    namespace: nginx-ingress
    version: 1.3.1
    hooks:
      pre_install:
        - kubectl create ns nginx-ingress || true
        - kubectl annotate ns nginx-ingress --overwrite linkerd.io/inject=enabled
        - kubectl -n nginx-ingress apply -f custom-headers.yaml
    set-values:
      controller.minAvailable: 1
      controller.replicaCount: 2
      defaultBackend.replicaCount: 2
      defaultBackend.minAvailable: 1
      controller.ingressClass: "nginx-ingress"
      controller.publishService.enabled: "true"
      controller.metrics.enabled: true
      controller.stats.enabled: true
      controller.resources:
        limits.cpu: 500m
        limits.memory: 500Mi
        requests.cpu: 100m
        requests.memory: 100Mi
      rbac.create: true
      controller.podLabels.nginx-affinity: nginx-ingress
      controller.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[0].labelSelector.matchExpressions[0].key: nginx-affinity
      controller.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[0].labelSelector.matchExpressions[0].operator: In
      controller.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[0].labelSelector.matchExpressions[0].values[0]: nginx-ingress
      controller.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[0].topologyKey: "kubernetes.io/hostname"
      controller.image.pullPolicy: "Always"
    values-strings:
      controller.livenessProbe.initialDelaySeconds: 900
      controller:
        extraArgs:
          v: 2
        config:
          add-headers: "nginx-ingress/custom-headers"

@endzyme endzyme closed this as completed Apr 15, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant