diff --git a/.travis.yml b/.travis.yml index 711c7943..a13091ce 100644 --- a/.travis.yml +++ b/.travis.yml @@ -29,7 +29,8 @@ cache: env: - BASE_IMAGE=ubuntu:16.04 - - BASE_IMAGE=centos:latest +# Commented out temporarily until Issue 166 is resolved +# - BASE_IMAGE=centos:latest jobs: include: diff --git a/CHANGELOG.md b/CHANGELOG.md index 552fe900..8d51d449 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,14 +1,33 @@ # Change log -## master +## 9.1.0.0 (2018-07-23) + +* Updated to MQ version 9.1.0.0 +* Added Docker 1.12 tests +* Added MQ SDK Docker image sample +* Added MQ Golang SDK Docker image sample +* Added Prometheus metric gathering implementation +* Added MQ Internet Pass-Thru (MS81) Docker image sample +* Added POWER & z/Linux image builds +* `devjmstest` image now built with Maven instead of gradle +* Added FAT manifests for Docker Hub/Docker Store +* Added Red Hat Enterprise Linux image build +* Added basic versioning debug information into golang programs +* Removed 9.0.4 + +## 9.0.5.0 (2018-03-13) + +* Updated to MQ version 9.0.5.0 * Container's stdout can now be set to JSON format (set LOG_FORMAT=json) * MQ error logs (in JSON or plain text) are now mirrored on stdout for the container. * `chkmqready` now waits until MQSC scripts in `/etc/mqm` have been applied * `chkmqready` and `chkmqhealthy` now run as the "mqm" user * Added ability to optionally use an alternative base image * Various build and test improvements +* Removed 9.0.3 ## 9.0.4 (2017-11-06) + * Updated to MQ version 9.0.4.0 * Updated to Go version 9 * Removed packages `curl`, `ca-certificates`, and their dependencies, which were only used at build time @@ -18,4 +37,5 @@ * Updated to use multi-stage Docker build, so that Go code is built inside a container ## 9.0.3 (2017-10-17) + * Initial version diff --git a/Makefile b/Makefile index b84d968c..eb630767 100644 --- a/Makefile +++ b/Makefile @@ -19,7 +19,7 @@ # BASE_IMAGE is the base image to use for MQ, for example "ubuntu" or "rhel" BASE_IMAGE ?= ubuntu:16.04 # MQ_VERSION is the fully qualified MQ version number to build -MQ_VERSION ?= 9.0.5.0 +MQ_VERSION ?= 9.1.0.0 # MQ_ARCHIVE is the name of the file, under the downloads directory, from which MQ Advanced can # be installed. The default value is derived from MQ_VERSION, BASE_IMAGE and architecture # Does not apply to MQ Advanced for Developers. @@ -91,8 +91,8 @@ else ifeq "$(ARCH)" "s390x" MQ_DEV_ARCH=s390x endif # Archive names for IBM MQ Advanced for Developers -MQ_ARCHIVE_DEV_9.0.4.0=mqadv_dev904_$(MQ_ARCHIVE_DEV_PLATFORM)_x86-64.tar.gz MQ_ARCHIVE_DEV_9.0.5.0=mqadv_dev905_$(MQ_ARCHIVE_DEV_PLATFORM)_x86-64.tar.gz +MQ_ARCHIVE_DEV_9.1.0.0=mqadv_dev910_$(MQ_ARCHIVE_DEV_PLATFORM)_$(MQ_DEV_ARCH).tar.gz ############################################################################### # Build targets diff --git a/docs/building.md b/docs/building.md index 873bc4c8..33dda869 100644 --- a/docs/building.md +++ b/docs/building.md @@ -11,7 +11,7 @@ If you are working in the Windows Subsystem for Linux, follow [this guide by Mic This procedure works for building the MQ Continuous Delivery release, on `x86_64`, `ppc64le` and `s390x` architectures. 1. Create a `downloads` directory in the root of this repository -2. Download MQ from IBM Passport Advantage, and place the downloaded file (for example, `IBM_MQ_9.0.5.0_UBUNTU_X86-64.tar.gz` for MQ V9.0.5 for Ubuntu on x86_64 architecture) in the `downloads` directory +2. Download MQ from IBM Passport Advantage, and place the downloaded file (for example, `IBM_MQ_9.1.0.0_UBUNTU_X86-64.tar.gz` for MQ V9.1.0 for Ubuntu on x86_64 architecture) in the `downloads` directory 2. Run `make build-advancedserver` > **Warning**: Note that MQ offers two different sets of packaging on Linux: one is called "MQ for Linux" and contains RPM files for installing on Red Hat Enterprise Linux and SUSE Linux Enterprise Server. The other package is called "MQ for Ubuntu", and contains DEB files for installing on Ubuntu. @@ -19,7 +19,7 @@ This procedure works for building the MQ Continuous Delivery release, on `x86_64 You can build a different version of MQ by setting the `MQ_VERSION` environment variable, for example: ```bash -MQ_VERSION=9.0.4.0 make build-advancedserver +MQ_VERSION=9.0.5.0 make build-advancedserver ``` If you have an MQ archive file with a different file name, you can specify a particular file (which must be in the `downloads` directory). You should also specify the MQ version, so that the resulting image is tagged correctly, for example: @@ -40,7 +40,7 @@ By default, the MQ images use Ubuntu as the base layer. You can build using a R BASE_IMAGE=centos:7 make build-advancedserver ``` -The `make` tool will try and locate the right archive file under the `downloads` directory, based on your platform architecture and your `MQ_VERSION` environment variable, for example `IBM_MQ_9.0.5.0_LINUX_X86_64.tar.gz` for MQ V9.0.5.0 on x86_64. You can also set the `MQ_ARCHIVE` environment variable to set the specific file name. +The `make` tool will try and locate the right archive file under the `downloads` directory, based on your platform architecture and your `MQ_VERSION` environment variable, for example `IBM_MQ_9.1.0.0_LINUX_X86_64.tar.gz` for MQ V9.1.0.0 on x86_64. You can also set the `MQ_ARCHIVE` environment variable to set the specific file name. Note that if you are using Red Hat Enterprise Linux, you will need to create your own base image layer, with your subscription enabled, as described [here](https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux_atomic_host/7/html/getting_started_with_containers/get_started_with_docker_formatted_container_images). The MQ image build needs to install some additional packages, and a subscription is required to access the Red Hat repositories. diff --git a/docs/testing.md b/docs/testing.md index 3f677de7..e66d0d8f 100644 --- a/docs/testing.md +++ b/docs/testing.md @@ -25,7 +25,7 @@ make test-advancedserver You can specify the image to use directly by using the `MQ_IMAGE_ADVANCEDSERVER` or `MQ_IMAGE_DEVSERVER` variables, for example: ``` -MQ_IMAGE_ADVANCEDSERVER=mqadvanced-server:9.0.5.0-x86_64-ubuntu-16.04 make test-advancedserver +MQ_IMAGE_ADVANCEDSERVER=mqadvanced-server:9.1.0.0-x86_64-ubuntu-16.04 make test-advancedserver ``` You can pass parameters to `go test` with an environment variable. For example, to run the "TestGoldenPath" test, run the following command:: @@ -34,10 +34,10 @@ You can pass parameters to `go test` with an environment variable. For example, TEST_OPTS_DOCKER="-run TestGoldenPath" make test-advancedserver ``` -You can also use the same environment variables you specified when [building](./building), for example, the following will try and test an image called `mqadvanced-server:9.0.4.0-x86_64-ubuntu-16.04`: +You can also use the same environment variables you specified when [building](./building), for example, the following will try and test an image called `mqadvanced-server:9.0.5.0-x86_64-ubuntu-16.04`: ``` -MQ_VERSION=9.0.4.0 make test-advancedserver +MQ_VERSION=9.0.5.0 make test-advancedserver ``` ### Running the Docker tests with code coverage diff --git a/manifests/README.md b/manifests/README.md index 8810c82c..bdb6ab5f 100644 --- a/manifests/README.md +++ b/manifests/README.md @@ -1,7 +1,7 @@ Fat manifests ============= -These are the fat manifests used by Docker Hub to handle images with multiple CPU architectures. +These are the fat manifests used by Docker Hub and Docker store to handle images with multiple CPU architectures. They are used in conjunction with [manifest-tool](https://github.com/estesp/manifest-tool), for example: diff --git a/manifests/manifest-9-cd.yaml b/manifests/dockerhub/manifest-9.1.yaml similarity index 85% rename from manifests/manifest-9-cd.yaml rename to manifests/dockerhub/manifest-9.1.yaml index c96b320e..ab25f2a6 100644 --- a/manifests/manifest-9-cd.yaml +++ b/manifests/dockerhub/manifest-9.1.yaml @@ -12,17 +12,17 @@ # See the License for the specific language governing permissions and # limitations under the License. -image: ibmcom/mq:9-cd +image: ibmcom/mq:9.1.0.0 manifests: - - image: ibmcom/mq:9.0.5.0-x86_64 + - image: ibmcom/mq:9.1.0.0-x86_64 platform: architecture: amd64 os: linux - - image: ibmcom/mq:9.0.5.0-ppc64le + - image: ibmcom/mq:9.1.0.0-ppc64le platform: architecture: ppc64le os: linux - - image: ibmcom/mq:9.0.5.0-s390x + - image: ibmcom/mq:9.1.0.0-s390x platform: architecture: s390x os: linux diff --git a/manifests/manifest-9.yaml b/manifests/dockerhub/manifest-9.yaml similarity index 87% rename from manifests/manifest-9.yaml rename to manifests/dockerhub/manifest-9.yaml index f97f0765..540b10cc 100644 --- a/manifests/manifest-9.yaml +++ b/manifests/dockerhub/manifest-9.yaml @@ -14,15 +14,15 @@ image: ibmcom/mq:9 manifests: - - image: ibmcom/mq:9.0.5.0-x86_64 + - image: ibmcom/mq:9.1.0.0-x86_64 platform: architecture: amd64 os: linux - - image: ibmcom/mq:9.0.5.0-ppc64le + - image: ibmcom/mq:9.1.0.0-ppc64le platform: architecture: ppc64le os: linux - - image: ibmcom/mq:9.0.5.0-s390x + - image: ibmcom/mq:9.1.0.0-s390x platform: architecture: s390x os: linux diff --git a/manifests/manifest-latest.yaml b/manifests/dockerhub/manifest-latest.yaml similarity index 87% rename from manifests/manifest-latest.yaml rename to manifests/dockerhub/manifest-latest.yaml index db5eb53b..051eac82 100644 --- a/manifests/manifest-latest.yaml +++ b/manifests/dockerhub/manifest-latest.yaml @@ -14,15 +14,15 @@ image: ibmcom/mq:latest manifests: - - image: ibmcom/mq:9.0.5.0-x86_64 + - image: ibmcom/mq:9.1.0.0-x86_64 platform: architecture: amd64 os: linux - - image: ibmcom/mq:9.0.5.0-ppc64le + - image: ibmcom/mq:9.1.0.0-ppc64le platform: architecture: ppc64le os: linux - - image: ibmcom/mq:9.0.5.0-s390x + - image: ibmcom/mq:9.1.0.0-s390x platform: architecture: s390x os: linux diff --git a/manifests/manifest-cd.yaml b/manifests/dockerstore/manifest-9.1.yaml similarity index 78% rename from manifests/manifest-cd.yaml rename to manifests/dockerstore/manifest-9.1.yaml index 6cb173c0..2a088e99 100644 --- a/manifests/manifest-cd.yaml +++ b/manifests/dockerstore/manifest-9.1.yaml @@ -12,17 +12,17 @@ # See the License for the specific language governing permissions and # limitations under the License. -image: ibmcom/mq:cd +image: ibmcorp/mqadvanced-server-dev:9.1.0.0 manifests: - - image: ibmcom/mq:9.0.5.0-x86_64 + - image: ibmcorp/mqadvanced-server-dev:9.1.0.0-x86_64 platform: architecture: amd64 os: linux - - image: ibmcom/mq:9.0.5.0-ppc64le + - image: ibmcorp/mqadvanced-server-dev:9.1.0.0-ppc64le platform: architecture: ppc64le os: linux - - image: ibmcom/mq:9.0.5.0-s390x + - image: ibmcorp/mqadvanced-server-dev:9.1.0.0-s390x platform: architecture: s390x os: linux