You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by GitBox <gi...@apache.org> on 2021/06/14 07:34:57 UTC
[GitHub] [camel-k] tadayosi opened a new pull request #2392: chore(e2e): allow e2e to use nexus mirror to speed up testing #2387
tadayosi opened a new pull request #2392:
URL: https://github.com/apache/camel-k/pull/2392
<!-- Description -->
This time the pull req introduces a opt-in env var `TEST_ENABLE_NEXUS` to allow you to use nexus mirror during e2e testing. This doesn't affect existing workflow. Only developers who want to use nexus during local e2e testing can use this env var to enable it.
<!--
Enter your extended release note in the below block. If the PR requires
additional action from users switching to the new release, include the string
"action required". If no release note is required, write "NONE".
You can (optionally) mark this PR with labels "kind/bug" or "kind/feature" to make sure
the text is added to the right section of the release notes.
-->
**Release Note**
```release-note
NONE
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [camel-k] tadayosi commented on a change in pull request #2392: chore(e2e): allow e2e to use nexus mirror to speed up testing #2387
Posted by GitBox <gi...@apache.org>.
tadayosi commented on a change in pull request #2392:
URL: https://github.com/apache/camel-k/pull/2392#discussion_r649750515
##########
File path: docs/modules/ROOT/pages/contributing/developers.adoc
##########
@@ -109,6 +109,24 @@ After you log in into your cluster, you can run the following command to execute
make test-integration
----
+[NOTE]
Review comment:
Yeah but the existing e2e doc doesn't talk about `make test-integration` there. At this moment, doc on e2e testing is split into two places. I agree that we need to consolidate the doc and e2e.adoc is the right place.
##########
File path: docs/modules/ROOT/pages/contributing/developers.adoc
##########
@@ -109,6 +109,24 @@ After you log in into your cluster, you can run the following command to execute
make test-integration
----
+[NOTE]
+====
+To speed up integration testing locally, you may use a https://github.com/sonatype/docker-nexus3[Nexus Repository Manager] for Maven repository mirror.
+
+You can set the environment variable `TEST_EABLE_NEXUS=true` to enable the usage of Nexus mirror in e2e testing. If `TEST_EABLE_NEXUS` is set, e2e tests will try to discover an Nexus instance as `nexus` service in `nexus` namespace and if it is found they will use it as the Maven repository mirror for the `camel-k` platform under test.
Review comment:
Thanks, I'll correct it.
##########
File path: docs/modules/ROOT/pages/contributing/developers.adoc
##########
@@ -109,6 +109,24 @@ After you log in into your cluster, you can run the following command to execute
make test-integration
----
+[NOTE]
Review comment:
I will take this opportunity to consolidate the doc in this pull req. Let me change the doc part as well.
##########
File path: docs/modules/ROOT/pages/contributing/developers.adoc
##########
@@ -85,29 +85,14 @@ make STAGING_IMAGE_NAME='docker.io/myrepo/camel-k' images-push-staging
== Testing
Unit tests are executed automatically as part of the build. They use the standard go testing framework.
+The **convention** used in this repo is to name tests `xxx_test.go`.
Review comment:
Cleaned up!
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [camel-k] astefanutti commented on a change in pull request #2392: chore(e2e): allow e2e to use nexus mirror to speed up testing #2387
Posted by GitBox <gi...@apache.org>.
astefanutti commented on a change in pull request #2392:
URL: https://github.com/apache/camel-k/pull/2392#discussion_r649723263
##########
File path: docs/modules/ROOT/pages/contributing/developers.adoc
##########
@@ -109,6 +109,24 @@ After you log in into your cluster, you can run the following command to execute
make test-integration
----
+[NOTE]
+====
+To speed up integration testing locally, you may use a https://github.com/sonatype/docker-nexus3[Nexus Repository Manager] for Maven repository mirror.
+
+You can set the environment variable `TEST_EABLE_NEXUS=true` to enable the usage of Nexus mirror in e2e testing. If `TEST_EABLE_NEXUS` is set, e2e tests will try to discover an Nexus instance as `nexus` service in `nexus` namespace and if it is found they will use it as the Maven repository mirror for the `camel-k` platform under test.
Review comment:
`TEST_EABLE_NEXUS` -> `TEST_ENABLE_NEXUS`
##########
File path: docs/modules/ROOT/pages/contributing/developers.adoc
##########
@@ -109,6 +109,24 @@ After you log in into your cluster, you can run the following command to execute
make test-integration
----
+[NOTE]
Review comment:
There is a page dedicated to e2e testing, that may be a better location for documenting this: https://camel.apache.org/camel-k/latest/contributing/e2e.html.
##########
File path: docs/modules/ROOT/pages/contributing/developers.adoc
##########
@@ -85,29 +85,14 @@ make STAGING_IMAGE_NAME='docker.io/myrepo/camel-k' images-push-staging
== Testing
Unit tests are executed automatically as part of the build. They use the standard go testing framework.
+The **convention** used in this repo is to name tests `xxx_test.go`.
Review comment:
I think it's a convention from Golang, that relies on it for `go test`, rather than a convention from this repository. I'd suggest to remove it.
##########
File path: docs/modules/ROOT/pages/contributing/developers.adoc
##########
@@ -85,29 +85,14 @@ make STAGING_IMAGE_NAME='docker.io/myrepo/camel-k' images-push-staging
== Testing
Unit tests are executed automatically as part of the build. They use the standard go testing framework.
+The **convention** used in this repo is to name tests `xxx_test.go`.
Review comment:
Thanks!
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [camel-k] astefanutti commented on pull request #2392: chore(e2e): allow e2e to use nexus mirror to speed up testing #2387
Posted by GitBox <gi...@apache.org>.
astefanutti commented on pull request #2392:
URL: https://github.com/apache/camel-k/pull/2392#issuecomment-859371412
> Thanks @astefanutti for your feedback. I totally agree that ideally we should be able to run e2e tests with a local operator instead of everything putting into a cluster. And at the same time I understand it's not an easy task to re-architect the current e2e testing.
>
> In addition, to be honest I think it's still an important technique in general to use a maven mirror in the cluster to speed up integration builds for typical camel-k developers. Even though kits cache builds with the same set of dependencies it can still download the same common artifacts time and time again for different deployments. Is this an unpopular view? I hope I'm not missing some important technique that everyone else already knows.
I agree this is a useful option, that can also be leveraged to upload custom JARs. Plus your solution is simple and non-intrusive 👍🏼.
> With a bit of surprise, I found that applying mirroring to the current e2e set on CI doesn't gain any performance boost, but theoretically I still believe there should be a performance gain especially in the future when the number of e2e tests outgrows the overhead of introducing the nexus mirroring. And for e2e testing on CI, running a local operator is not an option so the mirroring technique might become still useful.
GitHub Actions VMs are quite low-end, so I suspect performances are more CPU and memory bound, than network bound. With 2-core CPU and 7 GB of RAM memory, it's not surprising that running a Kubernetes cluster, installing operators, and running a test suite is that slow, no matter how much Maven dependencies downloading is improved.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [camel-k] tadayosi merged pull request #2392: chore(e2e): allow e2e to use nexus mirror to speed up testing #2387
Posted by GitBox <gi...@apache.org>.
tadayosi merged pull request #2392:
URL: https://github.com/apache/camel-k/pull/2392
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [camel-k] tadayosi commented on pull request #2392: chore(e2e): allow e2e to use nexus mirror to speed up testing #2387
Posted by GitBox <gi...@apache.org>.
tadayosi commented on pull request #2392:
URL: https://github.com/apache/camel-k/pull/2392#issuecomment-859361287
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [camel-k] tadayosi edited a comment on pull request #2392: chore(e2e): allow e2e to use nexus mirror to speed up testing #2387
Posted by GitBox <gi...@apache.org>.
tadayosi edited a comment on pull request #2392:
URL: https://github.com/apache/camel-k/pull/2392#issuecomment-859361287
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org