-
Notifications
You must be signed in to change notification settings - Fork 366
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
Add conformance CI test with all alpha features enabled #1428
Add conformance CI test with all alpha features enabled #1428
Conversation
Thanks for your PR. The following commands are available:
|
9ff9d39
to
291d17f
Compare
291d17f
to
e030bc7
Compare
Codecov Report
@@ Coverage Diff @@
## master #1428 +/- ##
==========================================
+ Coverage 67.80% 67.90% +0.10%
==========================================
Files 159 159
Lines 12829 12829
==========================================
+ Hits 8699 8712 +13
+ Misses 3208 3194 -14
- Partials 922 923 +1
Flags with carried forward coverage won't be shown. Click here to find out more.
|
LGTM. Yet @lzhecheng was reluctant to add additional tests for Antrea Proxy, so let's wait for his feedback |
Thanks Weiqiang for your effort! As I explained to Kobi yesterday, I think it might be unnecessary to add one job for each feature like Antrea Proxy. In the near future, we will turn on Antrea Proxy by default and then this job become useless since it will be tested on the major jobs... Also, now Antrea Proxy PR can turn on Antrea Proxy feature gate for testing and turn it off before getting merged. Let alone the extra cloud computing resource for this new job. |
@lzhecheng it may make sense to have one job with the default manifest and one job with all the "alpha" features enabled, especially since these "alpha" features tend to have dependencies on each other. This way we keep the number of jobs under control and we don't need to keep updating the job list as feature stability levels evolve. But yes, I would recommend against defining one job for each individual feature. |
@lzhecheng @antoninbas, thanks for your feedback and I understand your opinions. |
Yes, I think we can have one job for all "alpha" features including Antrea Proxy. Maybe let's rename the job in this PR to "alpha-feature-conformance" and make it optional. |
e030bc7
to
3e083d4
Compare
ci/jenkins/test-vmc.sh
Outdated
[--garbage-collection] [--setup-only] [--cleanup-only] [--coverage] [--test-only] | ||
|
||
Setup a VMC cluster to run K8s e2e community tests (E2e, Conformance, whole Conformance & Network Policy). | ||
Setup a VMC cluster to run K8s e2e community tests (E2e, Conformance, Antrea Proxy Conformance, whole Conformance & Network Policy). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Setup a VMC cluster to run K8s e2e community tests (E2e, Conformance, Antrea Proxy Conformance, whole Conformance & Network Policy). | |
Setup a VMC cluster to run K8s e2e community tests (E2e, Conformance, full features Conformance, whole Conformance & Network Policy). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think this was addressed?
ci/jenkins/test-vmc.sh
Outdated
|
||
--cluster-name The cluster name to be used for the generated VMC cluster. | ||
--kubeconfig Path to save kubeconfig of generated VMC cluster. | ||
--workdir Home path for Go, vSphere information and antrea_logs during cluster setup. Default is $WORKDIR. | ||
--log-mode Use the flag to set either 'report', 'detail', or 'dump' level data for sonobouy results. | ||
--testcase The testcase to run: e2e, conformance, whole-conformance or networkpolicy. | ||
--testcase The testcase to run: e2e, conformance, proxy-conformance, whole-conformance or networkpolicy. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
--testcase The testcase to run: e2e, conformance, proxy-conformance, whole-conformance or networkpolicy. | |
--testcase The testcase to run: e2e, conformance, full-features-conformance, whole-conformance or networkpolicy. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
same
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM except in some places, "proxy-conformance" should be "full-features-conformance"
Thanks, @lzhecheng. |
/skip-all |
jenkins-jobs-validator failed. I checked logs: It seems indention here is wrong: |
Makefile
Outdated
@@ -247,6 +247,7 @@ build-ubuntu-coverage: | |||
manifest: | |||
@echo "===> Generating dev manifest for Antrea <===" | |||
$(CURDIR)/hack/generate-manifest.sh --mode dev > build/yamls/antrea.yml | |||
$(CURDIR)/hack/generate-manifest.sh --mode dev --full > build/yamls/antrea-full.yml |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could we avoid checking this manifest in? Having more manifest files checked-in means that every PR that makes a small change to an Antrea resource leads to a big diff.
I feel like this manifest is only useful for testing and therefore we can generate in on the fly as part of the test script. We do the same thing for the "coverage" manifests in test-vmc.sh. For those we have a dedicated Makefile target (make manifest-coverage
) but I think it's not necessary here: we can just call generate-manifest.sh
directly from the test-vmc.sh script.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Make sense. I have removed the generation in Makefile and moved it to test-vmc.sh
.
ci/jenkins/jobs/projects.yaml
Outdated
@@ -410,6 +410,92 @@ | |||
started_status: null | |||
wrappers: [] | |||
publishers: [] | |||
- '{name}-{test_name}-for-pull-request': | |||
test_name: full-features-conformance-pending-label |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
sorry for the late comment, but I feel like all-features-*
is a better name
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Updated.
hack/generate-manifest.sh
Outdated
@@ -27,6 +27,7 @@ Generate a YAML manifest for Antrea using Kustomize and print it to stdout. | |||
--kind Generate a manifest appropriate for running Antrea in a Kind cluster | |||
--cloud Generate a manifest appropriate for running Antrea in Public Cloud | |||
--ipsec Generate a manifest with IPSec encryption of tunnel traffic enabled | |||
--full Generate a manifest with all alpha features enabled |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please rename to --all-features
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Updated.
feffa6d
to
9e2e7c0
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I see several references to "proxy-conformance" in test-vmc.sh?
You should also remove build/yamls/antrea-full.yml, it no longer needs to be checked-in
ci/jenkins/test-vmc.sh
Outdated
[--garbage-collection] [--setup-only] [--cleanup-only] [--coverage] [--test-only] | ||
|
||
Setup a VMC cluster to run K8s e2e community tests (E2e, Conformance, whole Conformance & Network Policy). | ||
Setup a VMC cluster to run K8s e2e community tests (E2e, Conformance, Antrea Proxy Conformance, whole Conformance & Network Policy). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think this was addressed?
ci/jenkins/test-vmc.sh
Outdated
|
||
--cluster-name The cluster name to be used for the generated VMC cluster. | ||
--kubeconfig Path to save kubeconfig of generated VMC cluster. | ||
--workdir Home path for Go, vSphere information and antrea_logs during cluster setup. Default is $WORKDIR. | ||
--log-mode Use the flag to set either 'report', 'detail', or 'dump' level data for sonobouy results. | ||
--testcase The testcase to run: e2e, conformance, whole-conformance or networkpolicy. | ||
--testcase The testcase to run: e2e, conformance, proxy-conformance, whole-conformance or networkpolicy. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
same
Signed-off-by: Weiqiang Tang <weiqiangt@vmware.com>
9e2e7c0
to
b29f691
Compare
Sorry, it looks like the review commit was flushed by my local force-push. |
/test-e2e |
No description provided.