@@ -142,5 +142,5 @@ a oap image with name `bar/oap:foo`, run the following command
...
@@ -142,5 +142,5 @@ a oap image with name `bar/oap:foo`, run the following command
```
```
5. Run `./mvnw compile -Dmaven.test.skip=true`
5. Run `./mvnw compile -Dmaven.test.skip=true`
6. Run `maven update`. Must remove the clean projects item before maven update(This will be clear the proto conversion Java file generated by the complie)
6. Run `maven update`. Must remove the clean projects item before maven update(This will be clear the proto conversion Java file generated by the complie)
7. Run `./mvnw compile` complie collector-remote-grpc-provider and apm-protocol
7. Run `./mvnw compile` compile collector-remote-grpc-provider and apm-protocol
@@ -24,7 +24,24 @@ All the following channels are open to the community, you could choose the way y
...
@@ -24,7 +24,24 @@ All the following channels are open to the community, you could choose the way y
* QQ Group: 392443393
* QQ Group: 392443393
## For code developer
## For code developer
As a develop, first step, read [Compiling Guide](How-to-build.md). It teaches developer how to build the project in local.
For developers, first step, read [Compiling Guide](How-to-build.md). It teaches developer how to build the project in local and set up the environment.
After setting up the environment and writing your codes, in order to make it more easily accepted by SkyWalking project, you'll
need to run the tests locally to verify that your codes don't break any existed features,
and write some unit test (UT) codes to verify that the new codes work well, preventing them being broke by future contributors.
If the new codes involve other components or libraries, you're also supposed to write integration tests (IT).
SkyWalking leverages plugin `maven-surefire-plugin` to run the UTs while using `maven-failsafe-plugin`
to run the ITs, `maven-surefire-plugin` will exclude ITs (whose class name starts with `IT`)
and leave them for `maven-failsafe-plugin` to run, which is bound to the `verify` goal, `CI-with-IT` profile.
Therefore, to run the UTs, try `./mvnw clean test`, this will only run the UTs, not including ITs.
If you want to run the ITs please activate the `CI-with-IT` profile
as well as the the profiles of the modules whose ITs you want to run.
e.g. if you want to run the ITs in `oap-server`, try `./mvnw -Pbackend,CI-with-IT clean verify`,
and if you'd like to run all the ITs, simple run `./mvnw -Pall,CI-with-IT clean verify`.
Please be advised that if you're writing integration tests, name it with the pattern `IT*` to make them only run in `CI-with-IT` profile.
### Project Extensions
### Project Extensions
SkyWalking project supports many ways to extend existing features. If you are interesting in these ways,
SkyWalking project supports many ways to extend existing features. If you are interesting in these ways,
...
@@ -58,4 +75,4 @@ in SkyWalking release, after 6.0.0-GA.
...
@@ -58,4 +75,4 @@ in SkyWalking release, after 6.0.0-GA.
## For release
## For release
[Apache Release Guide](How-to-release.md) introduces to the committer team about doing official Apache version release, to avoid
[Apache Release Guide](How-to-release.md) introduces to the committer team about doing official Apache version release, to avoid
breaking any Apache rule. Apache license allows everyone to redistribute if you keep our licenses and NOTICE
breaking any Apache rule. Apache license allows everyone to redistribute if you keep our licenses and NOTICE