300 lines
		
	
	
		
			13 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			300 lines
		
	
	
		
			13 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| 
 | |
| test('convertContainerEnvsToArray', function () {
 | |
|     $data = '[
 | |
|       {
 | |
|           "Id": "c9248632fb1f1ba4b0d885f78ebadf6af6233799a645d2f5c749088dbf55d79f",
 | |
|           "Created": "2025-05-21T11:58:44.902108064Z",
 | |
|           "Path": "docker-entrypoint.sh",
 | |
|           "Args": [
 | |
|               "postgres"
 | |
|           ],
 | |
|           "State": {
 | |
|               "Status": "running",
 | |
|               "Running": true,
 | |
|               "Paused": false,
 | |
|               "Restarting": false,
 | |
|               "OOMKilled": false,
 | |
|               "Dead": false,
 | |
|               "Pid": 1114005,
 | |
|               "ExitCode": 0,
 | |
|               "Error": "",
 | |
|               "StartedAt": "2025-05-22T08:47:41.404232362Z",
 | |
|               "FinishedAt": "2025-05-22T08:47:36.222181133Z"
 | |
|           },
 | |
|           "Image": "sha256:4100a24644378a24cdbe3def6fc2346999c53d87b12180c221ebb17f05259948",
 | |
|           "ResolvConfPath": "/var/lib/docker/containers/c9248632fb1f1ba4b0d885f78ebadf6af6233799a645d2f5c749088dbf55d79f/resolv.conf",
 | |
|           "HostnamePath": "/var/lib/docker/containers/c9248632fb1f1ba4b0d885f78ebadf6af6233799a645d2f5c749088dbf55d79f/hostname",
 | |
|           "HostsPath": "/var/lib/docker/containers/c9248632fb1f1ba4b0d885f78ebadf6af6233799a645d2f5c749088dbf55d79f/hosts",
 | |
|           "LogPath": "/var/lib/docker/containers/c9248632fb1f1ba4b0d885f78ebadf6af6233799a645d2f5c749088dbf55d79f/c9248632fb1f1ba4b0d885f78ebadf6af6233799a645d2f5c749088dbf55d79f-json.log",
 | |
|           "Name": "/coolify-db",
 | |
|           "RestartCount": 0,
 | |
|           "Driver": "overlay2",
 | |
|           "Platform": "linux",
 | |
|           "MountLabel": "",
 | |
|           "ProcessLabel": "",
 | |
|           "AppArmorProfile": "",
 | |
|           "ExecIDs": null,
 | |
|           "HostConfig": {
 | |
|               "Binds": null,
 | |
|               "ContainerIDFile": "",
 | |
|               "LogConfig": {
 | |
|                   "Type": "json-file",
 | |
|                   "Config": {
 | |
|                       "max-file": "5",
 | |
|                       "max-size": "20m"
 | |
|                   }
 | |
|               },
 | |
|               "NetworkMode": "coolify",
 | |
|               "PortBindings": {
 | |
|                   "5432/tcp": [
 | |
|                       {
 | |
|                           "HostIp": "",
 | |
|                           "HostPort": "5432"
 | |
|                       }
 | |
|                   ]
 | |
|               },
 | |
|               "RestartPolicy": {
 | |
|                   "Name": "always",
 | |
|                   "MaximumRetryCount": 0
 | |
|               },
 | |
|               "AutoRemove": false,
 | |
|               "VolumeDriver": "",
 | |
|               "VolumesFrom": null,
 | |
|               "ConsoleSize": [
 | |
|                   0,
 | |
|                   0
 | |
|               ],
 | |
|               "CapAdd": null,
 | |
|               "CapDrop": null,
 | |
|               "CgroupnsMode": "private",
 | |
|               "Dns": null,
 | |
|               "DnsOptions": null,
 | |
|               "DnsSearch": null,
 | |
|               "ExtraHosts": [],
 | |
|               "GroupAdd": null,
 | |
|               "IpcMode": "private",
 | |
|               "Cgroup": "",
 | |
|               "Links": null,
 | |
|               "OomScoreAdj": 0,
 | |
|               "PidMode": "",
 | |
|               "Privileged": false,
 | |
|               "PublishAllPorts": false,
 | |
|               "ReadonlyRootfs": false,
 | |
|               "SecurityOpt": null,
 | |
|               "UTSMode": "",
 | |
|               "UsernsMode": "",
 | |
|               "ShmSize": 8405385216,
 | |
|               "Runtime": "runc",
 | |
|               "Isolation": "",
 | |
|               "CpuShares": 0,
 | |
|               "Memory": 0,
 | |
|               "NanoCpus": 0,
 | |
|               "CgroupParent": "",
 | |
|               "BlkioWeight": 0,
 | |
|               "BlkioWeightDevice": null,
 | |
|               "BlkioDeviceReadBps": null,
 | |
|               "BlkioDeviceWriteBps": null,
 | |
|               "BlkioDeviceReadIOps": null,
 | |
|               "BlkioDeviceWriteIOps": null,
 | |
|               "CpuPeriod": 0,
 | |
|               "CpuQuota": 0,
 | |
|               "CpuRealtimePeriod": 0,
 | |
|               "CpuRealtimeRuntime": 0,
 | |
|               "CpusetCpus": "",
 | |
|               "CpusetMems": "",
 | |
|               "Devices": null,
 | |
|               "DeviceCgroupRules": null,
 | |
|               "DeviceRequests": null,
 | |
|               "MemoryReservation": 0,
 | |
|               "MemorySwap": 0,
 | |
|               "MemorySwappiness": null,
 | |
|               "OomKillDisable": null,
 | |
|               "PidsLimit": null,
 | |
|               "Ulimits": null,
 | |
|               "CpuCount": 0,
 | |
|               "CpuPercent": 0,
 | |
|               "IOMaximumIOps": 0,
 | |
|               "IOMaximumBandwidth": 0,
 | |
|               "Mounts": [
 | |
|                   {
 | |
|                       "Type": "volume",
 | |
|                       "Source": "coolify_dev_postgres_data",
 | |
|                       "Target": "/var/lib/postgresql/data",
 | |
|                       "VolumeOptions": {}
 | |
|                   }
 | |
|               ],
 | |
|               "MaskedPaths": [
 | |
|                   "/proc/asound",
 | |
|                   "/proc/acpi",
 | |
|                   "/proc/kcore",
 | |
|                   "/proc/keys",
 | |
|                   "/proc/latency_stats",
 | |
|                   "/proc/timer_list",
 | |
|                   "/proc/timer_stats",
 | |
|                   "/proc/sched_debug",
 | |
|                   "/proc/scsi",
 | |
|                   "/sys/firmware",
 | |
|                   "/sys/devices/virtual/powercap"
 | |
|               ],
 | |
|               "ReadonlyPaths": [
 | |
|                   "/proc/bus",
 | |
|                   "/proc/fs",
 | |
|                   "/proc/irq",
 | |
|                   "/proc/sys",
 | |
|                   "/proc/sysrq-trigger"
 | |
|               ]
 | |
|           },
 | |
|           "GraphDriver": {
 | |
|               "Data": {
 | |
|                   "LowerDir": "/var/lib/docker/overlay2/4a03d9a49852aeb72cd14417b5122d5b45bb1f8f51c2644568dca8ad3c263a92-init/diff:/var/lib/docker/overlay2/eea7d1cf26dc92bf884306de3cc589cfdfe0eedb8429030c89cdeb2e8b2c27dd/diff:/var/lib/docker/overlay2/d15ed074d3ab9b42ca38bf18310826afd6155263bc5e897b9182790538b17a54/diff:/var/lib/docker/overlay2/f0ef521fb8a7b9a62d9975bf5b8329895d4aa8d0b10591ad99b5f4d4898b85fe/diff:/var/lib/docker/overlay2/11e83afbece0e9b0e14040f1488f8261e2829cda6b9ebbe3acf042e73b89170b/diff:/var/lib/docker/overlay2/e098a4be50ff4cac048956f4da13b1cdd2a5a768589b5d0d159ab6dcd751919b/diff:/var/lib/docker/overlay2/c9693cd93928bcc8b3f22d90c59f46560fa14a66ad023e4b52e3ae80fa2cd852/diff:/var/lib/docker/overlay2/0d1e07c496139e1ce46ed1137f2d8ae555f02c00e7093ea6026721d8c349c7bd/diff:/var/lib/docker/overlay2/a75a4a3040d8aaa1996cec1c6c0137699f5c2d3deeefa0db684fe0e1d0d78173/diff:/var/lib/docker/overlay2/9709d71704fb9654bb8a2665f989e3559702e58150f27d3768edd994c53fb079/diff:/var/lib/docker/overlay2/75b02083af6cbeb1d90a53d9ad1fffa04671a8ef9068a11e84f1ec1ec102bfad/diff:/var/lib/docker/overlay2/2b13fe91ba5fbbbd5c7077a0f908d863d0c55f42e060be5cca5f51e24e395a29/diff",
 | |
|                   "MergedDir": "/var/lib/docker/overlay2/4a03d9a49852aeb72cd14417b5122d5b45bb1f8f51c2644568dca8ad3c263a92/merged",
 | |
|                   "UpperDir": "/var/lib/docker/overlay2/4a03d9a49852aeb72cd14417b5122d5b45bb1f8f51c2644568dca8ad3c263a92/diff",
 | |
|                   "WorkDir": "/var/lib/docker/overlay2/4a03d9a49852aeb72cd14417b5122d5b45bb1f8f51c2644568dca8ad3c263a92/work"
 | |
|               },
 | |
|               "Name": "overlay2"
 | |
|           },
 | |
|           "Mounts": [
 | |
|               {
 | |
|                   "Type": "volume",
 | |
|                   "Name": "coolify_dev_postgres_data",
 | |
|                   "Source": "/var/lib/docker/volumes/coolify_dev_postgres_data/_data",
 | |
|                   "Destination": "/var/lib/postgresql/data",
 | |
|                   "Driver": "local",
 | |
|                   "Mode": "z",
 | |
|                   "RW": true,
 | |
|                   "Propagation": ""
 | |
|               }
 | |
|           ],
 | |
|           "Config": {
 | |
|               "Hostname": "c9248632fb1f",
 | |
|               "Domainname": "",
 | |
|               "User": "",
 | |
|               "AttachStdin": false,
 | |
|               "AttachStdout": true,
 | |
|               "AttachStderr": true,
 | |
|               "ExposedPorts": {
 | |
|                   "5432/tcp": {}
 | |
|               },
 | |
|               "Tty": false,
 | |
|               "OpenStdin": false,
 | |
|               "StdinOnce": false,
 | |
|               "Env": [
 | |
|                   "RAY_ENABLED=true=123",
 | |
|                   "REGISTRY_URL=docker.io",
 | |
|                   "SUBSCRIPTION_PROVIDER=stripe",
 | |
|                   "TELESCOPE_ENABLED=false",
 | |
|                   "POSTGRES_HOST_AUTH_METHOD=trust",
 | |
|                   "DB_PASSWORD=password",
 | |
|                   "SSH_MUX_ENABLED=true",
 | |
|                   "SELF_HOSTED=false",
 | |
|                   "APP_DEBUG=true",
 | |
|                   "DB_HOST=host.docker.internal",
 | |
|                   "POSTGRES_DB=coolify",
 | |
|                   "APP_KEY=base64:8VEfVNVkXQ9mH2L33WBWNMF4eQ0BWD5CTzB9mIxcl+k=",
 | |
|                   "DEBUGBAR_ENABLED=false",
 | |
|                   "APP_ID=development",
 | |
|                   "DB_DATABASE=coolify",
 | |
|                   "DUSK_DRIVER_URL=http://selenium:4444",
 | |
|                   "DB_USERNAME=coolify",
 | |
|                   "APP_NAME=Coolify Development",
 | |
|                   "APP_PORT=8000",
 | |
|                   "DB_PORT=5432",
 | |
|                   "APP_URL=http://localhost",
 | |
|                   "APP_ENV=local",
 | |
|                   "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
 | |
|                   "GOSU_VERSION=1.17",
 | |
|                   "LANG=en_US.utf8",
 | |
|                   "PG_MAJOR=15",
 | |
|                   "PG_VERSION=15.13",
 | |
|                   "PG_SHA256=4f62e133d22ea08a0401b0840920e26698644d01a80c34341fb732dd0a90ca5d",
 | |
|                   "DOCKER_PG_LLVM_DEPS=llvm19-dev \t\tclang19",
 | |
|                   "PGDATA=/var/lib/postgresql/data"
 | |
|               ],
 | |
|               "Cmd": [
 | |
|                   "postgres"
 | |
|               ],
 | |
|               "Image": "postgres:15-alpine",
 | |
|               "Volumes": {
 | |
|                   "/var/lib/postgresql/data": {}
 | |
|               },
 | |
|               "WorkingDir": "/",
 | |
|               "Entrypoint": [
 | |
|                   "docker-entrypoint.sh"
 | |
|               ],
 | |
|               "OnBuild": null,
 | |
|               "Labels": {
 | |
|                   "com.docker.compose.config-hash": "56325981c5d891690fff628668ace4c434c4e457c91d85a0994f35a2409efd05",
 | |
|                   "com.docker.compose.container-number": "1",
 | |
|                   "com.docker.compose.depends_on": "",
 | |
|                   "com.docker.compose.image": "sha256:4100a24644378a24cdbe3def6fc2346999c53d87b12180c221ebb17f05259948",
 | |
|                   "com.docker.compose.oneoff": "False",
 | |
|                   "com.docker.compose.project": "coolify",
 | |
|                   "com.docker.compose.project.config_files": "/Users/heyandras/devel/coolify/docker-compose.yml,/Users/heyandras/devel/coolify/docker-compose.dev.yml",
 | |
|                   "com.docker.compose.project.working_dir": "/Users/heyandras/devel/coolify",
 | |
|                   "com.docker.compose.service": "postgres",
 | |
|                   "com.docker.compose.version": "2.32.4"
 | |
|               },
 | |
|               "StopSignal": "SIGINT"
 | |
|           },
 | |
|           "NetworkSettings": {
 | |
|               "Bridge": "",
 | |
|               "SandboxID": "8e341f80f5ea70fc7ab183d7cb1f7fe1032b9d98214b0d51665259cc7ebff355",
 | |
|               "SandboxKey": "/var/run/docker/netns/8e341f80f5ea",
 | |
|               "Ports": {
 | |
|                   "5432/tcp": [
 | |
|                       {
 | |
|                           "HostIp": "0.0.0.0",
 | |
|                           "HostPort": "5432"
 | |
|                       },
 | |
|                       {
 | |
|                           "HostIp": "::",
 | |
|                           "HostPort": "5432"
 | |
|                       }
 | |
|                   ]
 | |
|               },
 | |
|               "HairpinMode": false,
 | |
|               "LinkLocalIPv6Address": "",
 | |
|               "LinkLocalIPv6PrefixLen": 0,
 | |
|               "SecondaryIPAddresses": null,
 | |
|               "SecondaryIPv6Addresses": null,
 | |
|               "EndpointID": "",
 | |
|               "Gateway": "",
 | |
|               "GlobalIPv6Address": "",
 | |
|               "GlobalIPv6PrefixLen": 0,
 | |
|               "IPAddress": "",
 | |
|               "IPPrefixLen": 0,
 | |
|               "IPv6Gateway": "",
 | |
|               "MacAddress": "",
 | |
|               "Networks": {
 | |
|                   "coolify": {
 | |
|                       "IPAMConfig": null,
 | |
|                       "Links": null,
 | |
|                       "Aliases": [
 | |
|                           "coolify-db",
 | |
|                           "postgres"
 | |
|                       ],
 | |
|                       "MacAddress": "02:42:c0:a8:61:02",
 | |
|                       "DriverOpts": null,
 | |
|                       "NetworkID": "be1908fb78d9ae5f82d294f8943e0dc597135abbe335a5286e434f4989fd0b3f",
 | |
|                       "EndpointID": "40440f9c3f3018bb88af01bd198c3640f7ae3f296010dbe645b3725855aef72f",
 | |
|                       "Gateway": "192.168.97.1",
 | |
|                       "IPAddress": "192.168.97.2",
 | |
|                       "IPPrefixLen": 24,
 | |
|                       "IPv6Gateway": "",
 | |
|                       "GlobalIPv6Address": "",
 | |
|                       "GlobalIPv6PrefixLen": 0,
 | |
|                       "DNSNames": [
 | |
|                           "coolify-db",
 | |
|                           "postgres",
 | |
|                           "c9248632fb1f"
 | |
|                       ]
 | |
|                   }
 | |
|               }
 | |
|           }
 | |
|       }
 | |
|   ]';
 | |
|     $envs = format_docker_envs_to_json($data);
 | |
|     $this->assertEquals('true=123', $envs->get('RAY_ENABLED'));
 | |
| });
 | 
