Easier multi-arch or multi-version builds

This commit is contained in:
Arthur Barr
2017-11-28 14:52:41 +00:00
parent 7ea6b4c610
commit 5780ec2a26
2 changed files with 45 additions and 20 deletions

View File

@@ -13,19 +13,32 @@ You need to ensure you have the following tools installed:
For running the Kubernetes tests, a Kubernetes environment is needed, for example [Minikube](https://github.com/kubernetes/minikube) or [IBM Cloud Private](https://www.ibm.com/cloud-computing/products/ibm-cloud-private/).
## Building a production image
This procedure works for building the MQ Continuous Delivery release, on `x86_64`, `ppc64le` and `s390x` architectures.
1. Download MQ from IBM Passport Advantage, and place the downloaded file (for example, `CNLE4ML.tar.gz` for MQ V9.0.4) in the `downloads` directory
1. Download MQ from IBM Passport Advantage, and place the downloaded file (for example, `CNLE4ML.tar.gz` for MQ V9.0.4 on x86_64 architecture) in the `downloads` directory
2. Run `make build-advancedserver`
You can build a different version of MQ by setting the `MQ_VERSION` environment variable, for example:
```bash
MQ_VERSION=9.0.3.0 make build-advancedserver
```
## Running the tests
There are three main sets of tests:
1. Unit tests
1. Unit tests, which are run during a build
2. Docker tests, which test a complete Docker image, using the Docker API
3. Kubernetes tests, which test the Helm charts (and the Docker image) via [Helm](https://helm.sh)
### Running the tests
The unit and Docker tests can be run locally. For example:
### Running the Docker tests
The Docker tests can be run locally. Before you run them for the first time, you need to download the test dependencies:
```
make deps
```
You can then run the tests, for example:
```
make test-devserver
@@ -37,7 +50,7 @@ or:
make test-advancedserver
```
### Running the tests with code coverage
### Running the Docker tests with code coverage
You can produce code coverage results from the Docker tests by running the following:
```