diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..73e6fe4 --- /dev/null +++ b/Makefile @@ -0,0 +1,85 @@ +# © Copyright IBM Corporation 2018 +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +############################################################################### +# Build targets +############################################################################### + +# default to building UBUNTU as this was the default for the previous Makefile +.PHONY: build-devserver +build-devserver: build-devserver-ubuntu + +.PHONY: build-advancedserver +build-advancedserver: build-advancedserver-ubuntu + +.PHONY: test-devserver +test-devserver: test-devserver-ubuntu + +.PHONY: test-advancedserver +test-advancedserver: test-advancedserver-ubuntu + +.PHONY: deps +deps: deps-ubuntu + +.PHONY: lint +lint: lint-ubuntu + +# UBUNTU building targets +.PHONY: build-devserver-ubuntu +build-devserver-ubuntu: + $(MAKE) -f Makefile-UBUNTU build-devserver + +.PHONY: test-devserver-ubuntu +test-devserver-ubuntu: + $(MAKE) -f Makefile-UBUNTU test-devserver + +.PHONY: build-devjmstest +build-devjmstest: + $(MAKE) -f Makefile-UBUNTU build-devjmstest + +.PHONY: build-devjmstest-ubuntu + $(MAKE) -f Makefile-UBUNTU build-devjmstest + +.PHONY: build-advancedserver-ubuntu +build-advancedserver-ubuntu: + $(MAKE) -f Makefile-UBUNTU build-advancedserver + +.PHONY: test-advancedserver-ubuntu +test-advancedserver-ubuntu: + $(MAKE) -f Makefile-UBUNTU test-advancedserver + +.PHONY: deps-ubuntu +deps-ubuntu: + $(MAKE) -f Makefile-UBUNTU deps + +.PHONY: lint-ubuntu +lint-ubuntu: + $(MAKE) -f Makefile-UBUNTU lint + +# RHEL building targets +.PHONY: build-devserver-rhel +build-devserver-rhel: + $(MAKE) -f Makefile-RHEL build-devserver + +.PHONY: test-devserver-rhel +test-devserver-rhel: + $(MAKE) -f Makefile-RHEL test-devserver + +.PHONY: build-advancedserver-rhel +build-advancedserver-rhel: + $(MAKE) -f Makefile-RHEL build-advancedserver + +.PHONY: test-advancedserver-rhel +test-advancedserver-rhel: + $(MAKE) -f Makefile-RHEL test-advancedserver diff --git a/mq-advanced-server-rhel/ansible/.gitignore b/mq-advanced-server-rhel/ansible/.gitignore deleted file mode 100644 index 9b0b900..0000000 --- a/mq-advanced-server-rhel/ansible/.gitignore +++ /dev/null @@ -1 +0,0 @@ -hosts \ No newline at end of file diff --git a/mq-advanced-server-rhel/ansible/rhel-build.yaml b/mq-advanced-server-rhel/ansible/rhel-build.yaml deleted file mode 100644 index 76e2240..0000000 --- a/mq-advanced-server-rhel/ansible/rhel-build.yaml +++ /dev/null @@ -1,33 +0,0 @@ -# © Copyright IBM Corporation 2018 -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. ---- -# Sets up a server for building the Red Hat image. -- hosts: rhbuild - become: true - any_errors_fatal: true - tasks: - - name: install buildah - package: - name: buildah - state: present - when: ansible_distribution == "RedHat" - - name: install podman - package: - name: buildah - state: present - when: ansible_distribution == "RedHat" - - name: install make - package: - name: make - state: present diff --git a/mq-advanced-server-rhel/go-build.sh b/mq-advanced-server-rhel/go-build.sh index 24ba018..831ba41 100755 --- a/mq-advanced-server-rhel/go-build.sh +++ b/mq-advanced-server-rhel/go-build.sh @@ -1,11 +1,47 @@ #!/bin/bash +# -*- mode: sh -*- +# © Copyright IBM Corporation 2018 +# +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Builds and tests the golang programs used by the MQ image. + +set -e + +cd $GOPATH/src/github.com/ibm-messaging/mq-container/ # Build and test the Go code -go build ./cmd/runmqserver/ -go build ./cmd/chkmqready/ -go build ./cmd/chkmqhealthy/ -go test -v ./cmd/runmqserver/ -go test -v ./cmd/chkmqready/ -go test -v ./cmd/chkmqhealthy/ -go test -v ./internal/... -go vet ./cmd/... ./internal/... +mkdir -p build +cd build + +rm -f chkmqready chkmqhealthy runmqserver runmqdevserver + +if [ "$MQDEV" = "TRUE" ]; then + # Build and test the Go code + go build -ldflags "-X \"main.ImageCreated=$(date --iso-8601=seconds)\" -X \"main.ImageRevision=$IMAGE_REVISION\" -X \"main.ImageSource=$IMAGE_SOURCE\"" --tags 'mqdev' ../cmd/runmqserver/ + go build ../cmd/runmqdevserver/ +else + go build -ldflags "-X \"main.ImageCreated=$(date --iso-8601=seconds)\" -X \"main.ImageRevision=$IMAGE_REVISION\" -X \"main.ImageSource=$IMAGE_SOURCE\"" ../cmd/runmqserver/ +fi + +go build ../cmd/chkmqready/ +go build ../cmd/chkmqhealthy/ +go test -v ../cmd/runmqserver/ +go test -v ../cmd/chkmqready/ +go test -v ../cmd/chkmqhealthy/ +if [ "$MQDEV" = "TRUE" ]; then + go test -v ../cmd/runmqdevserver +fi +go test -v ../internal/... +go vet ../cmd/... ../internal/...