You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
`<type>` will one or more (separated by commas) of the following:
39
-
*`docker.docker-jenkins`: Provision a Docker container and generate and tag a local Docker image (`docker.unidata.ucar.edu/thredds-test-environment:latest`).
39
+
*`docker.docker-jenkins`: Provision a Docker container and generate and tag a local Docker image (`docker.unidata.ucar.edu/thredds-test-environment:20.04`).
40
40
*`docker.docker-github-action`: Provision a Docker container for use with GitHub Actions and tag a local docker image (`ghcr.io/unidata/thredds-test-action:v3`).
41
41
*`docker.docker-export`: Provision a Docker container and generate a local Docker image as a file (`image.tar`).
42
42
@@ -46,24 +46,24 @@ Typically, we would run the following to update the Jenkins and Github Action Do
The Docker image builds takes about 1 hour to create.
49
+
The Docker image builds takes about 30 minutes to create on MacOS.
50
50
Packer will run the builders in parallel, so the total time to create the `thredds-test-environment` images is around an hour.
51
51
52
52
If using `docker-jenkins`, then once the image is built you can test out the environment by using:
53
53
54
54
~~~bash
55
-
docker run -i -t --rm docker.unidata.ucar.edu/thredds-test-environment:latest
55
+
docker run -i -t --rm docker.unidata.ucar.edu/thredds-test-environment:24.04
56
56
~~~
57
57
58
-
These images are not produced using the multiplatform feature of Docker.
59
-
If you are on a arm64 based mac, you will need to run:
58
+
These images are built using the multiplatform feature of Docker, and only `linux/amd64` images are produced.
59
+
If you are on a `arm64` based mac, you will need to run:
60
60
61
61
~~~bash
62
-
DOCKER_DEFAULT_PLATFORM=linux/amd64 docker run -i -t --rm docker.unidata.ucar.edu/thredds-test-environment:latest
62
+
DOCKER_DEFAULT_PLATFORM=linux/amd64 docker run -i -t --rm docker.unidata.ucar.edu/thredds-test-environment:24.04
63
63
~~~
64
64
65
65
Note that images are not pushed as part of this build process.
66
-
Pushes can be done via the normal docker mechanisms, e.g. `docker image push docker.unidata.ucar.edu/thredds-test-environment:latest` and `docker image push ghcr.io/unidata/thredds-test-action:v3`.
66
+
Pushes can be done via the normal docker mechanisms, e.g. `docker image push docker.unidata.ucar.edu/thredds-test-environment:24.04` and `docker image push ghcr.io/unidata/thredds-test-action:v3`.
67
67
68
68
## Project layout
69
69
@@ -92,12 +92,11 @@ The `ansible/` directory is laid out as follows:
92
92
We use the following roles when provisioning our images:
93
93
94
94
*`cleanup`: General cleanup related tasks, such as remove the temporary build directory and running `ldconfig`
95
+
*`corretto`: Obtain and install LTS versions of Corretto.
95
96
*`general-packages`: Install general packages needed for the build environment using the OS package manager.
96
-
*`gradle-builds-cache-bootstrap`: Pull in and build netCDF-Java to populate the gradle cache for user ubuntu.
97
97
*`init`: Initialize the build environment by ensuring the temporary ansible build directory exists.
98
98
*`libnetcdf-and-deps`: Configure, build, and install `zlib`, `HDF5`, and `netCDF-C`.
99
99
*`maven`: Obtain and install the Apache Maven software project management and comprehension tool.
100
-
*`miniconda`: Obtain and install the Anaconda miniconda python distribution.
101
100
*`security`:
102
101
* Add the `ubuntu` user.
103
102
* Add a default `maven-settings.xml` file configured to publish to the Unidata artifacts server.
@@ -107,8 +106,6 @@ We use the following roles when provisioning our images:
107
106
*`test-data-mount-prep`: Prepare the environment to mount the `thredds-test-data` datasets when available (currently used on Jenkins worker nodes).
108
107
*`zulu`: Obtain and install LTS versions of Zulu.
109
108
110
-
We also use a role from [Ansible Galaxy](https://galaxy.ansible.com/) to setup a Ruby environment ([geerlingguy.ruby](https://galaxy.ansible.com/geerlingguy/ruby)).
111
-
112
109
## THREDDS Test Environment Highlights
113
110
114
111
### netCDF-C
@@ -118,10 +115,6 @@ We also use a role from [Ansible Galaxy](https://galaxy.ansible.com/) to setup a
0 commit comments