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

Use templater to generate prowjobs #252

Merged
merged 2 commits into from
Jan 25, 2022

Conversation

abhay-krishna
Copy link
Member

@abhay-krishna abhay-krishna commented Dec 30, 2021

This PR adds functionality to generate Prowjobs using Go templater using standard templates based on job types, with additional fields added based on configuration. Now any Prowjob can be defined using a set of common options defined here, which can be expanded if desired.

/hold

  • Periodics
  • Postsubmits
  • Presubmits

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

@abhay-krishna
Copy link
Member Author

/override prowjobs-lint-presubmit

The lint prowjob will fail on this PR since I'm moving the lint code to a separate lint folder while the Prowjob will look for it under scripts/lint_prowjobs.

@eks-distro-bot
Copy link
Collaborator

@abhay-krishna: Overrode contexts on behalf of abhay-krishna: prowjobs-lint-presubmit

In response to this:

/override prowjobs-lint-presubmit

The lint prowjob will fail on this PR since I'm moving the lint code to a separate lint folder while the Prowjob will look for it under scripts/lint_prowjobs.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@abhay-krishna
Copy link
Member Author

/override prowjobs-lint-presubmit

@eks-distro-bot
Copy link
Collaborator

@abhay-krishna: Overrode contexts on behalf of abhay-krishna: prowjobs-lint-presubmit

In response to this:

/override prowjobs-lint-presubmit

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@abhay-krishna abhay-krishna force-pushed the template-pj branch 5 times, most recently from 69bacf5 to ace0ee7 Compare December 31, 2021 04:43
@abhay-krishna abhay-krishna marked this pull request as draft December 31, 2021 04:45
@abhay-krishna abhay-krishna force-pushed the template-pj branch 8 times, most recently from 0c655fa to 2e54e04 Compare December 31, 2021 08:50
@abhay-krishna
Copy link
Member Author

@jaxesn I've resolved your comments for the most part, except the make targets. I will do that in a follow-up to this after modifying the make targets in the respective repos.

@abhay-krishna abhay-krishna force-pushed the template-pj branch 2 times, most recently from 12931fb to 1fd3441 Compare January 9, 2022 02:54
@abhay-krishna
Copy link
Member Author

/test prowjobs-lint-presubmit

Copy link
Member

@jaxesn jaxesn left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/lgtm

@eks-distro-bot
Copy link
Collaborator

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: abhay-krishna, jaxesn

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:
  • OWNERS [abhay-krishna,jaxesn]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@eks-distro-bot eks-distro-bot merged commit 3f00296 into aws:main Jan 25, 2022
@eks-distro-bot
Copy link
Collaborator

@abhay-krishna: Updated the job-config configmap in namespace default at cluster default using the following files:

  • key prometheus-alertmanager-postsubmits.yaml using file ``
  • key alertmanager-postsubmits.yaml using file jobs/aws/eks-distro-build-tooling/alertmanager-postsubmits.yaml
  • key prometheus-alertmanager-presubmits.yaml using file ``
  • key alertmanager-presubmits.yaml using file jobs/aws/eks-distro-build-tooling/alertmanager-presubmits.yaml
  • key amazon-eks-pod-identity-webhook-postsubmits.yaml using file jobs/aws/eks-distro-build-tooling/amazon-eks-pod-identity-webhook-postsubmits.yaml
  • key amazon-eks-pod-identity-webhook-presubmits.yaml using file jobs/aws/eks-distro-build-tooling/amazon-eks-pod-identity-webhook-presubmits.yaml
  • key athens-postsubmits.yaml using file jobs/aws/eks-distro-build-tooling/athens-postsubmits.yaml
  • key athens-presubmits.yaml using file jobs/aws/eks-distro-build-tooling/athens-presubmits.yaml
  • key aws-for-fluent-bit-helm-chart-postsubmits.yaml using file jobs/aws/eks-distro-build-tooling/aws-for-fluent-bit-helm-chart-postsubmits.yaml
  • key aws-for-fluent-bit-helm-chart-presubmits.yaml using file jobs/aws/eks-distro-build-tooling/aws-for-fluent-bit-helm-chart-presubmits.yaml
  • key builder-base-postsubmits.yaml using file jobs/aws/eks-distro-build-tooling/builder-base-postsubmits.yaml
  • key builder-base-presubmits.yaml using file jobs/aws/eks-distro-build-tooling/builder-base-presubmits.yaml
  • key eks-distro-base-periodics.yaml using file jobs/aws/eks-distro-build-tooling/eks-distro-base-periodics.yaml
  • key eks-distro-base-postsubmits.yaml using file jobs/aws/eks-distro-build-tooling/eks-distro-base-postsubmits.yaml
  • key eks-distro-base-presubmits.yaml using file jobs/aws/eks-distro-build-tooling/eks-distro-base-presubmits.yaml
  • key eks-distro-release-tooling-presubmits.yaml using file ``
  • key eks-distro-release-presubmits.yaml using file jobs/aws/eks-distro-build-tooling/eks-distro-release-presubmits.yaml
  • key github-exporter-postsubmits.yaml using file jobs/aws/eks-distro-build-tooling/github-exporter-postsubmits.yaml
  • key github-exporter-presubmits.yaml using file jobs/aws/eks-distro-build-tooling/github-exporter-presubmits.yaml
  • key grafana-helm-chart-postsubmits.yaml using file jobs/aws/eks-distro-build-tooling/grafana-helm-chart-postsubmits.yaml
  • key grafana-helm-chart-presubmits.yaml using file jobs/aws/eks-distro-build-tooling/grafana-helm-chart-presubmits.yaml
  • key helm-chart-postsubmits.yaml using file jobs/aws/eks-distro-build-tooling/helm-chart-postsubmits.yaml
  • key helm-chart-presubmits.yaml using file jobs/aws/eks-distro-build-tooling/helm-chart-presubmits.yaml
  • key prometheus-helm-chart-postsubmits.yaml using file jobs/aws/eks-distro-build-tooling/prometheus-helm-chart-postsubmits.yaml
  • key prometheus-helm-chart-presubmits.yaml using file jobs/aws/eks-distro-build-tooling/prometheus-helm-chart-presubmits.yaml
  • key prometheus-postsubmit.yaml using file ``
  • key prometheus-postsubmits.yaml using file jobs/aws/eks-distro-build-tooling/prometheus-postsubmits.yaml
  • key prometheus-presubmits.yaml using file jobs/aws/eks-distro-build-tooling/prometheus-presubmits.yaml
  • key prowjobs-lint-presubmits.yaml using file jobs/aws/eks-distro-prow-jobs/prowjobs-lint-presubmits.yaml
  • key announcement-postsubmits.yaml using file jobs/aws/eks-distro/announcement-postsubmits.yaml
  • key attribution-files-periodics.yaml using file jobs/aws/eks-distro/attribution-files-periodics.yaml
  • key attribution-files-postsubmits.yaml using file jobs/aws/eks-distro/attribution-files-postsubmits.yaml
  • key aws-iam-authenticator-1-18-presubmits.yaml using file jobs/aws/eks-distro/aws-iam-authenticator-1-18-presubmits.yaml
  • key aws-iam-authenticator-1-19-presubmits.yaml using file jobs/aws/eks-distro/aws-iam-authenticator-1-19-presubmits.yaml
  • key aws-iam-authenticator-1-20-presubmits.yaml using file jobs/aws/eks-distro/aws-iam-authenticator-1-20-presubmits.yaml
  • key aws-iam-authenticator-1-21-presubmits.yaml using file jobs/aws/eks-distro/aws-iam-authenticator-1-21-presubmits.yaml
  • key build-1-18-postsubmits.yaml using file jobs/aws/eks-distro/build-1-18-postsubmits.yaml
  • key build-1-19-postsubmits.yaml using file jobs/aws/eks-distro/build-1-19-postsubmits.yaml
  • key build-1-20-postsubmits.yaml using file jobs/aws/eks-distro/build-1-20-postsubmits.yaml
  • key build-1-21-minimal-postsubmits.yaml using file jobs/aws/eks-distro/build-1-21-minimal-postsubmits.yaml
  • key build-1-21-postsubmits.yaml using file jobs/aws/eks-distro/build-1-21-postsubmits.yaml
  • key cni-presubmits.yaml using file jobs/aws/eks-distro/cni-presubmits.yaml
  • key coredns-1-18-presubmits.yaml using file jobs/aws/eks-distro/coredns-1-18-presubmits.yaml
  • key coredns-1-19-presubmits.yaml using file jobs/aws/eks-distro/coredns-1-19-presubmits.yaml
  • key coredns-1-20-presubmits.yaml using file jobs/aws/eks-distro/coredns-1-20-presubmits.yaml
  • key coredns-1-21-presubmits.yaml using file jobs/aws/eks-distro/coredns-1-21-presubmits.yaml
  • key dev-release-1-18-postsubmits.yaml using file jobs/aws/eks-distro/dev-release-1-18-postsubmits.yaml
  • key dev-release-1-19-postsubmits.yaml using file jobs/aws/eks-distro/dev-release-1-19-postsubmits.yaml
  • key dev-release-1-20-postsubmits.yaml using file jobs/aws/eks-distro/dev-release-1-20-postsubmits.yaml
  • key dev-release-1-21-postsubmits.yaml using file jobs/aws/eks-distro/dev-release-1-21-postsubmits.yaml
  • key eks-distro-docs-postsubmits.yaml using file jobs/aws/eks-distro/eks-distro-docs-postsubmits.yaml
  • key eks-distro-docs-presubmits.yaml using file jobs/aws/eks-distro/eks-distro-docs-presubmits.yaml
  • key etcd-1-18-presubmits.yaml using file jobs/aws/eks-distro/etcd-1-18-presubmits.yaml
  • key etcd-1-19-presubmits.yaml using file jobs/aws/eks-distro/etcd-1-19-presubmits.yaml
  • key etcd-1-20-presubmits.yaml using file jobs/aws/eks-distro/etcd-1-20-presubmits.yaml
  • key etcd-1-21-presubmits.yaml using file jobs/aws/eks-distro/etcd-1-21-presubmits.yaml
  • key external-attacher-presubmits.yaml using file jobs/aws/eks-distro/external-attacher-presubmits.yaml
  • key external-provisioner-presubmits.yaml using file jobs/aws/eks-distro/external-provisioner-presubmits.yaml
  • key external-resizer-presubmits.yaml using file jobs/aws/eks-distro/external-resizer-presubmits.yaml
  • key external-snapshotter-presubmits.yaml using file jobs/aws/eks-distro/external-snapshotter-presubmits.yaml
  • key kubernetes-1-18-presubmits.yaml using file jobs/aws/eks-distro/kubernetes-1-18-presubmits.yaml
  • key kubernetes-1-18-presubmits-tests.yaml using file ``
  • key kubernetes-1-18-test-presubmits.yaml using file jobs/aws/eks-distro/kubernetes-1-18-test-presubmits.yaml
  • key kubernetes-1-19-presubmits.yaml using file jobs/aws/eks-distro/kubernetes-1-19-presubmits.yaml
  • key kubernetes-1-19-presubmits-tests.yaml using file ``
  • key kubernetes-1-19-test-presubmits.yaml using file jobs/aws/eks-distro/kubernetes-1-19-test-presubmits.yaml
  • key kubernetes-1-20-presubmits.yaml using file jobs/aws/eks-distro/kubernetes-1-20-presubmits.yaml
  • key kubernetes-1-20-presubmits-tests.yaml using file ``
  • key kubernetes-1-20-test-presubmits.yaml using file jobs/aws/eks-distro/kubernetes-1-20-test-presubmits.yaml
  • key kubernetes-1-21-presubmits.yaml using file jobs/aws/eks-distro/kubernetes-1-21-presubmits.yaml
  • key kubernetes-1-21-presubmits-tests.yaml using file ``
  • key kubernetes-1-21-test-presubmits.yaml using file jobs/aws/eks-distro/kubernetes-1-21-test-presubmits.yaml
  • key kubernetes-1-18-release-presubmits.yaml using file ``
  • key kubernetes-release-1-18-presubmits.yaml using file jobs/aws/eks-distro/kubernetes-release-1-18-presubmits.yaml
  • key kubernetes-1-19-release-presubmits.yaml using file ``
  • key kubernetes-release-1-19-presubmits.yaml using file jobs/aws/eks-distro/kubernetes-release-1-19-presubmits.yaml
  • key kubernetes-1-20-release-presubmits.yaml using file ``
  • key kubernetes-release-1-20-presubmits.yaml using file jobs/aws/eks-distro/kubernetes-release-1-20-presubmits.yaml
  • key kubernetes-1-21-release-presubmits.yaml using file ``
  • key kubernetes-release-1-21-presubmits.yaml using file jobs/aws/eks-distro/kubernetes-release-1-21-presubmits.yaml
  • key livenessprobe-presubmits.yaml using file jobs/aws/eks-distro/livenessprobe-presubmits.yaml
  • key main-presubmits.yaml using file jobs/aws/eks-distro/main-presubmits.yaml
  • key metrics-server-1-18-presubmits.yaml using file jobs/aws/eks-distro/metrics-server-1-18-presubmits.yaml
  • key metrics-server-1-19-presubmits.yaml using file jobs/aws/eks-distro/metrics-server-1-19-presubmits.yaml
  • key metrics-server-1-20-presubmits.yaml using file jobs/aws/eks-distro/metrics-server-1-20-presubmits.yaml
  • key metrics-server-1-21-presubmits.yaml using file jobs/aws/eks-distro/metrics-server-1-21-presubmits.yaml
  • key node-driver-registrar-presubmits.yaml using file jobs/aws/eks-distro/node-driver-registrar-presubmits.yaml
  • key prod-release-1-18-postsubmits.yaml using file jobs/aws/eks-distro/prod-release-1-18-postsubmits.yaml
  • key prod-release-1-19-postsubmits.yaml using file jobs/aws/eks-distro/prod-release-1-19-postsubmits.yaml
  • key prod-release-1-20-postsubmits.yaml using file jobs/aws/eks-distro/prod-release-1-20-postsubmits.yaml
  • key prod-release-1-21-postsubmits.yaml using file jobs/aws/eks-distro/prod-release-1-21-postsubmits.yaml
  • key presets.yaml using file jobs/presets.yaml

In response to this:

This PR adds functionality to generate Prowjobs using Go templater using standard templates based on job types, with additional fields added based on configuration. Now any Prowjob can be defined using a set of common options defined here, which can be expanded if desired.

/hold

  • Periodics
  • Postsubmits
  • Presubmits

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

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

Successfully merging this pull request may close these issues.

None yet

3 participants