Skip to content

Commit 60c1e83

Browse files
committed
12.0.10.0-r2 update
1 parent 09a67e5 commit 60c1e83

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

59 files changed

+806
-192
lines changed

.travis.yml

Lines changed: 16 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,19 @@
1-
sudo: required
2-
dist: xenial
3-
language: generic
1+
os: linux
2+
dist: bionic
3+
language: shell
44
services:
55
- docker
6-
# Make some fake binaries to spoof an ACE install for the Dockerbuild files to use.
7-
before_install:
8-
- mkdir -p deps/ace-install/server/bin/
9-
- echo -e "#!/bin/bash\nexport PATH=/opt/ibm/ace-11/server/bin/" > deps/ace-install/server/bin/mqsiprofile && chmod ugo+x deps/ace-install/server/bin/mqsiprofile
10-
- echo -e "#!/bin/bash\nexit 0" > deps/ace-install/server/bin/mqsicreateworkdir && chmod ugo+x deps/ace-install/server/bin/mqsicreateworkdir
11-
- echo -e "#!/bin/bash\ngroupadd mqbrkrs\ngroupadd mqm\nexit 0" > deps/ace-install/ace && chmod u+x deps/ace-install/ace
12-
- cd deps && tar czf ace-install.tar.gz ace-install && cd ..
6+
env:
7+
global:
8+
- DOWNLOAD_URL=https://na.artifactory.swg-devops.com/artifactory/appconnect-iiboc/prereqs/builds/12.0.10.0/xLinux/ace-12.0.10.0.tar.gz
139
install:
14-
- docker build --build-arg ACE_INSTALL=ace-install.tar.gz --file ubi/Dockerfile.aceonly .
10+
- docker system info
11+
- touch git.commit
12+
- docker build --no-cache -t testbuild --build-arg DOWNLOAD_URL=$DOWNLOAD_URL --build-arg USERNAME=$ARTIFACTORY_USER --build-arg PASSWORD=$ARTIFACTORY_ACCESS_TOKEN -f ./Dockerfile .
13+
- cd samples/bars
14+
- docker build -t aceapp --build-arg FROMIMAGE=testbuild --file Dockerfile .
15+
- cd ../mqclient
16+
- docker build -t aceappmqclient --build-arg FROMIMAGE=aceapp --build-arg MQ_URL=https://public.dhe.ibm.com/ibmdl/export/pub/software/websphere/messaging/mqdev/redist/9.3.0.1-IBM-MQC-Redist-LinuxX64.tar.gz --file Dockerfile .
17+
- docker run -d -p 7800:7800 --env LICENSE=accept --name aceapp aceappmqclient
18+
script:
19+
- ../bars/test.sh

Dockerfile

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
# Build and run:
22
#
33
# docker build -t ace:12.0.4.0 -f Dockerfile .
4-
# docker run -e LICENSE=accept -p 7600:7600 -p 7800:7800 --rm -ti ace:12.0.4.0
4+
# docker run -e LICENSE=accept -p 7600:7600 -p 7800:7800 --rm -ti ace:12.0.2.0
55
#
66
# Can also mount a volume for the work directory:
77
#
8-
# docker run -e LICENSE=accept -v /what/ever/dir:/home/aceuser/ace-server -p 7600:7600 -p 7800:7800 --rm -ti ace:12.0.4.0
8+
# docker run -e LICENSE=accept -v /what/ever/dir:/home/aceuser/ace-server -p 7600:7600 -p 7800:7800 --rm -ti ace:12.0.2.0
99
#
1010
# This might require a local directory with the right permissions, or changing the userid further down . . .
1111

12-
FROM registry.access.redhat.com/ubi8/ubi-minimal as builder
12+
FROM registry.access.redhat.com/ubi9/ubi-minimal as builder
1313

14-
RUN microdnf update -y && microdnf install util-linux curl tar
14+
RUN microdnf update -y && microdnf install -y util-linux tar && microdnf clean all
1515

1616
ARG USERNAME
1717
ARG PASSWORD
@@ -29,12 +29,10 @@ RUN mkdir -p /opt/ibm/ace-12 \
2929
--strip-components 1 \
3030
--directory /opt/ibm/ace-12
3131

32-
FROM registry.access.redhat.com/ubi8/ubi-minimal
33-
34-
RUN microdnf update -y && microdnf install findutils util-linux && microdnf clean all
32+
FROM registry.access.redhat.com/ubi9/ubi-minimal
3533

3634
# Force reinstall tzdata package to get zoneinfo files
37-
RUN microdnf reinstall tzdata -y
35+
RUN microdnf update -y && microdnf install -y findutils util-linux which tar && microdnf reinstall -y tzdata && microdnf clean all
3836

3937
# Install ACE v12.0.4.0 and accept the license
4038
COPY --from=builder /opt/ibm/ace-12 /opt/ibm/ace-12
@@ -52,5 +50,8 @@ USER 1001
5250
# Expose ports. 7600, 7800, 7843 for ACE;
5351
EXPOSE 7600 7800 7843
5452

53+
# Set default Integration Server name
54+
ENV ACE_SERVER_NAME ace-server
55+
5556
# Set entrypoint to run the server
56-
ENTRYPOINT ["bash", "-c", ". /opt/ibm/ace-12/server/bin/mqsiprofile && IntegrationServer -w /home/aceuser/ace-server"]
57+
ENTRYPOINT ["bash", "-c", ". /opt/ibm/ace-12/server/bin/mqsiprofile && IntegrationServer --name ${ACE_SERVER_NAME} -w /home/aceuser/ace-server"]

README.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,9 @@ Use this link as the DOWNLOAD_URL build parameter, adjusting the version numbers
4141

4242
To run the image use a command such as
4343

44-
`docker run -d -p 7600:7600 -p 7800:7800 -e LICENSE=accept ace:latest`
44+
`docker run -d -p 7600:7600 -p 7800:7800 -e LICENSE=accept -e ACE_SERVER_NAME=myserver ace:latest`
45+
46+
where `ACE_SERVER_NAME` is the name of the Integration Server that will be running.
4547

4648
### Extending the image
4749

asoc/appscan-config.xml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
<Configuration>
2+
<Targets>
3+
<Target path="../">
4+
<Exclude>asoc/</Exclude>
5+
<Exclude>jenkins-build-scripts/</Exclude>
6+
</Target>
7+
</Targets>
8+
</Configuration>

experimental/README.md

Lines changed: 36 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -2,33 +2,54 @@
22

33
Simple docker images for ACE v12 on Linux (amd64 and s390x) and Windows
44

5-
ace-full contains a Dockerfile for building an image that can run the full product, including mqsicreatebar with a virtual X server.
5+
Dockefiles in the following directories are used for various purposes:
66

7-
ace-basic contains a Dockerfile for building an image that can run the product server, including all files except the toolkit.
7+
- ace-full can run the full product, including mqsicreatebar with a virtual X server.
8+
- ace-basic can run the product server, including all files except the toolkit.
9+
- ace-minimal can run simple servers with a non-root user.
10+
- ace-sample contains a sample BAR file and Dockerfiles for building runnable images to serve HTTP clients.
11+
- devcontainers is used with GitHub Codespaces to allow container-based development with VisualStudio Code in a web browser.
812

9-
ace-minimal contains the Dockerfiles for building images that can run simple servers with a non-root user.
13+
See build-all.sh for details on building the images; setting LICENSE=accept is required for all but the initial image builds.
1014

11-
ace-sample contains a sample BAR file and Dockerfiles for building runnable images to serve HTTP clients.
15+
## Setting the correct product URL
1216

13-
See build-all.sh for details on building the images; setting LICENSE=accept is required for all but the initial image builds.
17+
The Dockerfiles in the various directories take a `DOWNLOAD_URL` parameter that may
18+
need to be specified to build a specific version of the product. This is provided on
19+
the command line using the `--build-arg` parameter, and for the demo repos that use
20+
Tekton to build the image, the URL is the `aceDownloadUrl` value in ace-minimal-image-pipeline-run.yaml.
21+
22+
This value may need updating, either to another version in the same server directory
23+
(if available) or else to an ACE developer edition URL from the IBM website. In the latter
24+
case, start at https://www.ibm.com/docs/en/app-connect/12.0?topic=enterprise-download-ace-developer-edition-get-started
25+
and proceed through the pages until the main download page with a link:
26+
27+
![download page](ace-dev-edition-download.png)
28+
29+
The link is likely to be of the form
30+
```
31+
https://iwm.dhe.ibm.com/sdfdl/v2/regs2/mbford/Xa.2/Xb.WJL1cUPI9gANEhP8GuPD_qX1rj6x5R4yTUM7s_C2ue8/Xc.12.0.10.0-ACE-LINUX64-DEVELOPER.tar.gz/Xd./Xf.LpR.D1vk/Xg.12164875/Xi.swg-wmbfd/XY.regsrvs/XZ.pPVETUejcqPsVfDVKbdNu6IRpo4TkyKu/12.0.10.0-ACE-LINUX64-DEVELOPER.tar.gz
32+
```
33+
Copy that link into the aceDownloadUrl parameter or use it as the DOWNLOAD_URL build
34+
parameter, adjusting the version numbers in the other files and parameters as needed.
35+
36+
## Running the sample
1437

1538
To run the sample after building:
1639
```
17-
docker run -e LICENSE=accept --rm -ti ace-sample:12.0.4.0-minimal-alpine
40+
docker run -e LICENSE=accept --rm -ti ace-sample:12.0.10.0-alpine
1841
```
19-
and then curl http://[container IP]:7800/test should return '{"data":"a string from ACE"}'
42+
and then `curl http://[container IP]:7800/test` should return '{"data":"a string from ACE"}'
2043

2144
## Various sizes
22-
Local on Debian 10 machine with defaults in Dockerfiles:
45+
Local on Ubuntu with defaults in Dockerfiles:
2346

2447
```
25-
ace-minimal 12.0.4.0-alpine-openjdk16 2d02c13096c9 24 minutes ago 496MB
26-
ace-minimal 12.0.4.0-alpine-openjdk14 5c1d593ee96f 25 minutes ago 506MB
27-
ace-minimal 12.0.4.0-alpine 6775ce85b5fd 27 minutes ago 604MB
28-
ace-minimal 12.0.4.0-ubuntu a351cfebbd4d 26 minutes ago 684MB
29-
ace-basic 12.0.4.0-ubuntu 319227027474 19 minutes ago 1.48GB
30-
ace-full 12.0.4.0-ubuntu 73978ff4c598 20 minutes ago 3.02GB
48+
ace-basic 12.0.10.0-ubuntu 69f66523df16 About a minute ago 1.78GB
49+
ace-full 12.0.10.0-ubuntu 2b77ec0f9a71 2 minutes ago 4.15GB
50+
ace-minimal 12.0.10.0-ubuntu 0b662240db80 13 minutes ago 738MB
51+
ace-minimal 12.0.10.0-alpine c5d126442f73 15 minutes ago 644MB
3152
```
3253

33-
Most of these will fit into the IBM Cloud container registry free tier due to compression, but ace-full and ace-basic are too big for that.
54+
Some of these will fit into the IBM Cloud container registry free tier due to compression, but ace-full and ace-basic are too big for that.
3455

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
FROM ubuntu:22.04
2+
3+
MAINTAINER Trevor Dolby <[email protected]> (@trevor-dolby-at-ibm-com)
4+
5+
# Build:
6+
#
7+
# docker build -t ace-basic-mqclient:12.0.10.0 -f Dockerfile.mqclient .
8+
9+
# Later versions from the same site, or else via the Developer edition download site linked from
10+
# https://www.ibm.com/docs/en/app-connect/12.0?topic=enterprise-download-ace-developer-edition-get-started
11+
ARG DOWNLOAD_URL=https://public.dhe.ibm.com/ibmdl/export/pub/software/websphere/integration/12.0.10.0-ACE-LINUX64-DEVELOPER.tar.gz
12+
ARG MQ_DOWNLOAD_URL=https://public.dhe.ibm.com/ibmdl/export/pub/software/websphere/messaging/mqdev/redist/9.3.2.0-IBM-MQC-Redist-LinuxX64.tar.gz
13+
# Can be set higher if needed
14+
ARG DOWNLOAD_CONNECTION_COUNT=1
15+
16+
# Prevent errors about having no terminal when using apt-get
17+
ENV DEBIAN_FRONTEND noninteractive
18+
19+
# Install ACE v12 and accept the license
20+
RUN apt-get update && apt-get install -y aria2 curl && \
21+
mkdir /opt/ibm && echo Downloading package ${DOWNLOAD_URL} && \
22+
cd /tmp && \
23+
echo Downloading package ${DOWNLOAD_URL} && \
24+
aria2c -s ${DOWNLOAD_CONNECTION_COUNT} -j ${DOWNLOAD_CONNECTION_COUNT} -x ${DOWNLOAD_CONNECTION_COUNT} "${DOWNLOAD_URL}" && \
25+
tar -zxf *12.0*tar.gz --exclude=tools --exclude server/bin/TADataCollector.sh --exclude server/nodejs_partial -exclude server/transformationAdvisor/ta-plugin-ace.jar --directory /opt/ibm && \
26+
rm -f *12.0*tar.gz && \
27+
mv /opt/ibm/ace-12* /opt/ibm/ace-12 && \
28+
/opt/ibm/ace-12/ace make registry global accept license deferred
29+
30+
# Create a user to run as, create the ace workdir, and chmod script files
31+
RUN useradd --uid 1001 --create-home --home-dir /home/aceuser --shell /bin/bash -G mqbrkrs,sudo aceuser \
32+
&& su - aceuser -c "export LICENSE=accept && . /opt/ibm/ace-12/server/bin/mqsiprofile && mqsicreateworkdir /home/aceuser/ace-server"
33+
34+
# Install MQ client libraries
35+
RUN mkdir /opt/mqm && curl ${MQ_DOWNLOAD_URL} | tar zx --exclude=tools --directory /opt/mqm
36+
37+
# Install Maven for development use.
38+
#
39+
# The standard Maven packages on most distros bring a lot of extra packages with
40+
# them so we install Maven directly.
41+
RUN cd /opt && \
42+
curl -k https://archive.apache.org/dist/maven/maven-3/3.8.4/binaries/apache-maven-3.8.4-bin.tar.gz | tar -xzf - && \
43+
ln -s /opt/apache-maven-3.8.4/bin/mvn /usr/local/bin/mvn
44+
45+
# aceuser
46+
USER 1001

experimental/ace-basic/Dockerfile.ubuntu

Lines changed: 18 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,35 @@
1-
FROM ubuntu:20.04
2-
MAINTAINER Trevor Dolby <tdolby@uk.ibm.com> (@tdolby)
1+
FROM ubuntu:22.04
2+
MAINTAINER Trevor Dolby <trevor.dolby@ibm.com> (@trevor-dolby-at-ibm-com)
33

44
# Build and run:
55
#
6-
# docker build -t ace-basic:12.0.4.0-ubuntu -f Dockerfile .
7-
# docker run -e LICENSE=accept -p 7600:7600 -p 7800:7800 --rm -ti ace-basic:12.0.4.0-ubuntu
6+
# docker build -t ace-basic:12.0.10.0-ubuntu -f Dockerfile .
7+
# docker run -e LICENSE=accept -p 7600:7600 -p 7800:7800 --rm -ti ace-basic:12.0.10.0-ubuntu
88
#
99
# Can also mount a volume for the work directory:
1010
#
11-
# docker run -e LICENSE=accept -v /what/ever/dir:/home/aceuser/ace-server -p 7600:7600 -p 7800:7800 --rm -ti ace-basic:12.0.4.0-ubuntu
11+
# docker run -e LICENSE=accept -v /what/ever/dir:/home/aceuser/ace-server -p 7600:7600 -p 7800:7800 --rm -ti ace-basic:12.0.10.0-ubuntu
1212
#
1313
# This might require a local directory with the right permissions, or changing the userid further down . . .
1414

15-
ARG USERNAME
16-
ARG PASSWORD
17-
ARG DOWNLOAD_URL=http://public.dhe.ibm.com/ibmdl/export/pub/software/websphere/integration/12.0.4.0-ACE-LINUX64-DEVELOPER.tar.gz
18-
ARG PRODUCT_LABEL=ace-12.0.4.0
15+
# Later versions from the same site, or else via the Developer edition download site linked from
16+
# https://www.ibm.com/docs/en/app-connect/12.0?topic=enterprise-download-ace-developer-edition-get-started
17+
ARG DOWNLOAD_URL=https://public.dhe.ibm.com/ibmdl/export/pub/software/websphere/integration/12.0.10.0-ACE-LINUX64-DEVELOPER.tar.gz
18+
# Can be set higher if needed
19+
ARG DOWNLOAD_CONNECTION_COUNT=1
1920

2021
# Prevent errors about having no terminal when using apt-get
2122
ENV DEBIAN_FRONTEND noninteractive
2223

23-
# Install ACE v12.0.4.0 and accept the license
24-
RUN apt-get update && apt-get install -y --no-install-recommends curl && \
24+
# Install ACE v12 and accept the license
25+
RUN apt-get update && apt-get install -y aria2 && \
2526
mkdir /opt/ibm && echo Downloading package ${DOWNLOAD_URL} && \
26-
if [ -z $USERNAME ]; then curl ${DOWNLOAD_URL}; else curl -u ${USERNAME}:{PASSWORD} ${DOWNLOAD_URL}; fi | \
27-
tar zx --exclude=tools --exclude server/bin/TADataCollector.sh --exclude server/transformationAdvisor/ta-plugin-ace.jar --directory /opt/ibm && \
28-
mv /opt/ibm/${PRODUCT_LABEL} /opt/ibm/ace-12 && \
27+
cd /tmp && \
28+
echo Downloading package ${DOWNLOAD_URL} && \
29+
aria2c -s ${DOWNLOAD_CONNECTION_COUNT} -j ${DOWNLOAD_CONNECTION_COUNT} -x ${DOWNLOAD_CONNECTION_COUNT} "${DOWNLOAD_URL}" && \
30+
tar -zxf *12.0*tar.gz --exclude=tools --exclude server/bin/TADataCollector.sh --exclude server/nodejs_partial --exclude server/transformationAdvisor/ta-plugin-ace.jar --directory /opt/ibm && \
31+
rm -f *12.0*tar.gz && \
32+
mv /opt/ibm/ace-12* /opt/ibm/ace-12 && \
2933
/opt/ibm/ace-12/ace make registry global accept license deferred
3034

3135
# Create a user to run as, create the ace workdir, and chmod script files
9.73 KB
Loading

experimental/ace-full/Dockerfile.ubuntu

Lines changed: 17 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,27 @@
1-
FROM ubuntu:20.04
2-
MAINTAINER Trevor Dolby <tdolby@uk.ibm.com> (@tdolby)
1+
FROM ubuntu:22.04
2+
MAINTAINER Trevor Dolby <trevor.dolby@ibm.com> (@trevor-dolby-at-ibm-com)
33

4-
# docker build -t ace-full:12.0.4.0-ubuntu -f Dockerfile.ubuntu .
4+
# docker build -t ace-full:12.0.10.0-ubuntu -f Dockerfile.ubuntu .
55

6-
ARG DOWNLOAD_URL=http://public.dhe.ibm.com/ibmdl/export/pub/software/websphere/integration/12.0.4.0-ACE-LINUX64-DEVELOPER.tar.gz
7-
ARG PRODUCT_LABEL=ace-12.0.4.0
6+
7+
# Later versions from the same site, or else via the Developer edition download site linked from
8+
# https://www.ibm.com/docs/en/app-connect/12.0?topic=enterprise-download-ace-developer-edition-get-started
9+
ARG DOWNLOAD_URL=https://public.dhe.ibm.com/ibmdl/export/pub/software/websphere/integration/12.0.10.0-ACE-LINUX64-DEVELOPER.tar.gz
10+
# Can be set higher if needed
11+
ARG DOWNLOAD_CONNECTION_COUNT=1
812

913
# Prevent errors about having no terminal when using apt-get
1014
ENV DEBIAN_FRONTEND noninteractive
1115

12-
# Install ACE v12.0.4.0 and accept the license
13-
RUN apt-get update && apt-get install -y --no-install-recommends curl && \
16+
# Install ACE v12 and accept the license
17+
RUN apt-get update && apt-get install -y aria2 && \
1418
mkdir /opt/ibm && echo Downloading package ${DOWNLOAD_URL} && \
15-
curl ${DOWNLOAD_URL} | tar zx --directory /opt/ibm && \
16-
mv /opt/ibm/${PRODUCT_LABEL} /opt/ibm/ace-12 && \
19+
cd /tmp && \
20+
echo Downloading package ${DOWNLOAD_URL} && \
21+
aria2c -s ${DOWNLOAD_CONNECTION_COUNT} -j ${DOWNLOAD_CONNECTION_COUNT} -x ${DOWNLOAD_CONNECTION_COUNT} "${DOWNLOAD_URL}" && \
22+
tar -zxf *12.0*tar.gz --directory /opt/ibm && \
23+
rm -f *12.0*tar.gz && \
24+
mv /opt/ibm/ace-12* /opt/ibm/ace-12 && \
1725
/opt/ibm/ace-12/ace make registry global accept license deferred
1826

1927
# Configure the system

experimental/ace-full/README.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,11 @@ in this directory.
1111
Containers must be started with the LICENSE environment variable set to "accept" for the
1212
product to be usable (for example, "-e LICENSE=accept" on a docker run command).
1313

14+
See the [ace-non-application-flows](https://github.com/trevor-dolby-at-ibm-com/ace-non-application-flows)
15+
demo repo for an example using this image to build non-application (top-level) resources.
16+
The `ibmint` command is not intended to be used to build such resources, and so mqsicreatebar
17+
(which requires a full image) is needed for the GitHub Action in that repo.
18+
1419
## Build image with mqsicreatebar
1520

1621
This container can be used as a base image for other build containers, or could be run with a

0 commit comments

Comments
 (0)