diff --git a/ansible/DockerInventory.json b/ansible/DockerInventory.json
new file mode 100644
index 0000000000..a7a356d6f6
--- /dev/null
+++ b/ansible/DockerInventory.json
@@ -0,0 +1,295 @@
+[
+ {
+ "name": "dockerhost-azure-ubuntu2204-x64-1",
+ "ip": "52.180.147.157",
+ "containers": [
+ {
+ "nodeName": "test-docker-alpine314-x64-1",
+ "port": "32769"
+ },
+ {
+ "nodeName": "test-docker-alpine319-x64-4",
+ "port": "32781"
+ },
+ {
+ "nodeName": "test-docker-fedora39-x64-2",
+ "port": "32779"
+ },
+ {
+ "nodeName": "test-docker-ubuntu2004-x64-2",
+ "port": "32768"
+ },
+ {
+ "nodeName": "test-docker-ubuntu2004-x64-5",
+ "port": "32780"
+ },
+ {
+ "nodeName": "test-docker-ubuntu2204-x64-2",
+ "port": "32778"
+ }
+ ],
+ "containersCount": 6
+ },
+ {
+ "name": "dockerhost-azure-ubuntu2204-x64-2",
+ "ip": "20.83.24.86",
+ "containers": [
+ {
+ "nodeName": "test-docker-alpine319-x64-2",
+ "port": "32774"
+ },
+ {
+ "nodeName": "test-docker-alpine319-x64-3",
+ "port": "32771"
+ },
+ {
+ "nodeName": "test-docker-debian12-x64-3",
+ "port": "32770"
+ },
+ {
+ "nodeName": "test-docker-debian12-x64-4",
+ "port": "32773"
+ },
+ {
+ "nodeName": "test-docker-ubuntu2004-x64-4",
+ "port": "32768"
+ },
+ {
+ "nodeName": "test-docker-ubuntu2204-x64-6",
+ "port": "32769"
+ },
+ {
+ "nodeName": "test-docker-ubuntu2204-x64-7",
+ "port": "32772"
+ }
+ ],
+ "containersCount": 7
+ },
+ {
+ "name": "dockerhost-equinix-ubuntu2004-armv8-1",
+ "ip": "147.75.35.203",
+ "containers": [
+ {
+ "nodeName": "test-docker-alpine319-armv8-2",
+ "port": "32775"
+ },
+ {
+ "nodeName": "test-docker-alpine319-armv8-4",
+ "port": "32777"
+ },
+ {
+ "nodeName": "test-docker-fedora39-armv8l-1",
+ "port": "2234"
+ },
+ {
+ "nodeName": "test-docker-sles15-armv8l-1",
+ "port": "2236"
+ },
+ {
+ "nodeName": "test-docker-ubuntu1804-armv8l-4",
+ "port": "32774"
+ },
+ {
+ "nodeName": "test-docker-ubuntu2004-armv7l-1",
+ "port": "2322"
+ },
+ {
+ "nodeName": "test-docker-ubuntu2004-armv7l-2",
+ "port": "2323"
+ },
+ {
+ "nodeName": "test-docker-ubuntu2004-armv7l-3",
+ "port": "2332"
+ },
+ {
+ "nodeName": "test-docker-ubuntu2004-armv8l-1",
+ "port": "32770"
+ },
+ {
+ "nodeName": "test-docker-ubuntu2004-armv8l-2",
+ "port": "32771"
+ },
+ {
+ "nodeName": "test-docker-ubuntu2004-armv8l-3",
+ "port": "32772"
+ },
+ {
+ "nodeName": "test-docker-ubuntu2204-armv8l-2",
+ "port": "32773"
+ },
+ {
+ "nodeName": "test-docker-ubuntu2310-armv8l-1",
+ "port": "32776"
+ }
+ ],
+ "containersCount": 13
+ },
+ {
+ "name": "dockerhost-equinix-ubuntu2204-armv8-1",
+ "ip": "139.178.86.243",
+ "containers": [
+ {
+ "nodeName": "test-docker-alpine314-armv8-3",
+ "port": "2214"
+ },
+ {
+ "nodeName": "test-docker-alpine319-armv8-1",
+ "port": "2232"
+ },
+ {
+ "nodeName": "test-docker-alpine319-armv8-3",
+ "port": "32772"
+ },
+ {
+ "nodeName": "test-docker-debain12-armv8l-1",
+ "port": "2231"
+ },
+ {
+ "nodeName": "test-docker-ubuntu2004-armv7l-4",
+ "port": "2230"
+ },
+ {
+ "nodeName": "test-docker-ubuntu2004-armv7l-5",
+ "port": "2229"
+ },
+ {
+ "nodeName": "test-docker-ubuntu2004-armv7l-6",
+ "port": "2227"
+ },
+ {
+ "nodeName": "test-docker-ubuntu2204-armv8-1",
+ "port": "32769"
+ },
+ {
+ "nodeName": "test-docker-ubuntu2204-armv8-2",
+ "port": "32770"
+ },
+ {
+ "nodeName": "test-docker-ubuntu2204-armv8-3",
+ "port": "32771"
+ }
+ ],
+ "containersCount": 10
+ },
+ {
+ "name": "dockerhost-marist-ubuntu2204-s390x-1",
+ "ip": "148.100.74.237",
+ "containers": [
+ {
+ "nodeName": "test-docker-sles12-s390x-1",
+ "port": "32769"
+ },
+ {
+ "nodeName": "test-docker-sles15-s390x-1",
+ "port": "32768"
+ }
+ ],
+ "containersCount": 2
+ },
+ {
+ "name": "dockerhost-osuosl-ubuntu2004-ppc64le-1",
+ "ip": "140.211.168.214",
+ "containers": [
+ {
+ "nodeName": "docker-osuosl-ubuntu2004-ppc64le-1",
+ "port": "22"
+ },
+ {
+ "nodeName": "test-docker-fedora39-ppc64le-1",
+ "port": "2229"
+ },
+ {
+ "nodeName": "test-docker-ubuntu2004-ppc64le-1",
+ "port": "2228"
+ },
+ {
+ "nodeName": "test-docker-ubuntu2204-ppc64le-3",
+ "port": "2230"
+ }
+ ],
+ "containersCount": 4
+ },
+ {
+ "name": "dockerhost-osuosl-ubuntu2204-aarch64-1",
+ "ip": "140.211.167.67",
+ "containers": [
+ {
+ "nodeName": "test-docker-centos8-armv8-1",
+ "port": "2224"
+ },
+ {
+ "nodeName": "test-docker-ubuntu2204-armv8-4",
+ "port": "2226"
+ }
+ ],
+ "containersCount": 2
+ },
+ {
+ "name": "dockerhost-rise-ubuntu2204-aarch64-1",
+ "ip": "34.72.108.242",
+ "containers": [],
+ "containersCount": 0
+ },
+ {
+ "name": "dockerhost-skytap-ubuntu2004-ppc64le-1",
+ "ip": "20.61.136.212",
+ "containers": [
+ {
+ "nodeName": "test-docker-debian11-ppc64le-1",
+ "port": "32768"
+ },
+ {
+ "nodeName": "test-docker-debian11-ppc64le-2",
+ "port": "32769"
+ },
+ {
+ "nodeName": "test-docker-debian11-ppc64le-3",
+ "port": "32770"
+ },
+ {
+ "nodeName": "test-docker-debian11-ppc64le-4",
+ "port": "32773"
+ },
+ {
+ "nodeName": "test-docker-ubuntu2204-ppc64le-1",
+ "port": "32771"
+ },
+ {
+ "nodeName": "test-docker-ubuntu2204-ppc64le-2",
+ "port": "32772"
+ }
+ ],
+ "containersCount": 6
+ },
+ {
+ "name": "dockerhost-skytap-ubuntu2204-x64-1",
+ "ip": "20.61.136.254",
+ "containers": [
+ {
+ "nodeName": "test-docker-alpine319-x64-1",
+ "port": "32787"
+ },
+ {
+ "nodeName": "test-docker-centos7-x64-1",
+ "port": "32782"
+ },
+ {
+ "nodeName": "test-docker-debian12-x64-1",
+ "port": "32778"
+ },
+ {
+ "nodeName": "test-docker-fedora39-x64-1",
+ "port": "32779"
+ },
+ {
+ "nodeName": "test-docker-ubi8-x64-3",
+ "port": "32790"
+ },
+ {
+ "nodeName": "test-docker-ubuntu2004-x64-3",
+ "port": "32783"
+ }
+ ],
+ "containersCount": 6
+ }
+]
\ No newline at end of file
diff --git a/ansible/inventory.yml b/ansible/inventory.yml
index bac7f050ce..e12aec8af6 100644
--- a/ansible/inventory.yml
+++ b/ansible/inventory.yml
@@ -50,9 +50,6 @@ hosts:
- digitalocean:
centos69-x64-2: {ip: 167.71.130.191}
- - equinix_esxi:
- solaris10-x64-1: {ip: 145.40.115.43}
-
- marist:
rhel79-s390x-1: {ip: 148.100.75.212, user: linux1}
rhel79-s390x-2: {ip: 148.100.74.54, user: linux1}
@@ -132,11 +129,6 @@ hosts:
ubuntu1804-ppc64le-2: {ip: 140.211.168.8, user: ubuntu}
ubuntu2004-ppc64le-1: {ip: 140.211.168.235, user: ubuntu}
- - equinix_esxi:
- ubuntu2204-x64-1: {ip: 145.40.115.44, description: Perf machine}
- ubuntu2204-x64-2: {ip: 145.40.115.46, description: Perf machine}
- solaris10-x64-1: {ip: 145.40.115.45}
-
- macincloud:
macos1201-x64-1: {ip: 216.39.74.137, user: admin, description: DXT437}
macos1201-x64-2: {ip: 216.39.74.140, user: admin, description: DXT440}
diff --git a/ansible/playbooks/AdoptOpenJDK_Unix_Playbook/roles/DockerStatic/scripts/updateDockerStaticInventory.py b/ansible/playbooks/AdoptOpenJDK_Unix_Playbook/roles/DockerStatic/scripts/updateDockerStaticInventory.py
new file mode 100644
index 0000000000..7a8df9c65e
--- /dev/null
+++ b/ansible/playbooks/AdoptOpenJDK_Unix_Playbook/roles/DockerStatic/scripts/updateDockerStaticInventory.py
@@ -0,0 +1,89 @@
+import sys
+import json
+import jenkins
+
+def getIP(nodeConfig):
+ find1 = nodeConfig.find("") + 6
+ find2 = nodeConfig.find("")
+ if find1 > 5 and find2 > -1:
+ ip = nodeConfig[find1:find2]
+ return ip
+ else:
+ return "No ip"
+
+def getNodePort(nodeConfig):
+ find1 = nodeConfig.find("") + 6
+ find2 = nodeConfig.find("")
+ if find1 > 5 and find2 > -1:
+ port = nodeConfig[find1:find2]
+ return port
+ else:
+ return "No port"
+
+def getLabel(nodeConfig):
+ find1 = nodeConfig.find("")
+ if find1 > 5 and find2 > -1:
+ labels = nodeConfig[find1:find2]
+ return labels
+ else:
+ return "No labels"
+
+def createServer(username, password):
+ url = "http://ci.adoptium.net:80"
+ server = jenkins.Jenkins(url, username=username,
+ password=password)
+ return server
+
+def help():
+ print("Help:\n"
+ " This script is used to retrieve dockerhost and static docker container information from the Adoptium Jenkins server hosted at https://ci.adoptium.net\n"
+ " Usage: python3 updateDockerStaticInventory.py $username $jenkinsAPItoken\n"
+ " The results are dumped into DockerInventory.json in the same directory from which the script was executed\n")
+
+def main():
+# Credentials passed via commandline
+ try:
+ username, password = sys.argv[1:3]
+ server = createServer(username, password)
+ dockerhosts = []
+ nodes = server.get_nodes()
+ except ValueError:
+ print("\nERROR:This script takes one username and one api token\n")
+ help()
+ sys.exit(1)
+
+# Get a list of dockerhost machines
+ for node in nodes:
+ if node["name"].find("dockerhost") > -1:
+ dockerhost = node["name"]
+ ip = getIP(server.get_node_config(dockerhost))
+ dockerhosts.append({"name":dockerhost, "ip":ip})
+
+ dockerhostsFull = []
+
+# Get static docker containers, group with dockerhosts
+ for dockerhost in dockerhosts:
+ print(dockerhost)
+ containers = []
+ for node in nodes:
+ try:
+ nodeConfig = server.get_node_config(node["name"])
+ nodeIP = getIP(nodeConfig)
+ nodePort = getNodePort(nodeConfig)
+ if nodeIP == dockerhost["ip"] and node["name"] != dockerhost["name"]:
+ nodeObject = {"nodeName": node["name"], "port": nodePort}
+ containers.append(nodeObject)
+ except jenkins.NotFoundException:
+ continue
+
+ dockerhostsFull.append({"name": dockerhost["name"], "ip": dockerhost["ip"], "containers": containers, "containersCount": len(containers)})
+
+ print(json.dumps(dockerhostsFull, indent=4))
+
+# Write output to file
+ with open('../DockerInventory.json', 'w') as f:
+ json.dump(dockerhostsFull, f, indent=4)
+
+if __name__ == "__main__":
+ main()
diff --git a/ansible/plugins/inventory/adoptopenjdk_yaml.py b/ansible/plugins/inventory/adoptopenjdk_yaml.py
index 3fe8ef8013..253f20c74c 100755
--- a/ansible/plugins/inventory/adoptopenjdk_yaml.py
+++ b/ansible/plugins/inventory/adoptopenjdk_yaml.py
@@ -49,7 +49,7 @@
'provider': ('alibaba', 'azure', 'marist', 'osuosl',
'macstadium', 'macincloud', 'ibmcloud', 'siteox',
'equinix', 'linaro','digitalocean', 'ibm', 'godaddy',
- 'aws', 'inspira', 'equinix_esxi', 'nine', 'scaleway', 'skytap',
+ 'aws', 'inspira', 'nine', 'scaleway', 'skytap',
'hetzner')
}