Just to add:

I see the right content in the file in the /godata/:

```

bash-5.1$ ls -al /godata/cruise-config.xml

-rwxr-xr-x    1 root     root         14950 Apr 11 09:38
/godata/cruise-config.xml

bash-5.1$ cat /godata/cruise-config.xml

<?xml version="1.0" encoding="utf-8"?>

<cruise xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
xsi:noNamespaceSchemaLocation="cruise-config.xsd" schemaVersion="139">

        <server jobTimeout="10"
agentAutoRegisterKey="abcb673ad8de1f6df1afa41eff9ba70e"
webhookSecret="e7e978e8-b4b1-498f-bd15-ce4c8f6f4240"
tokenGenerationKey="6a945808-d166-40f2-87ab-a1533fc1edba">

    <siteUrls>

      <siteUrl>https://gocd-brxt.corp.mendeley.com/</siteUrl>

      <secureSiteUrl>https://gocd-brxt.corp.mendeley.com/</secureSiteUrl>

    </siteUrls>

    <security>

      <authConfigs>

        <authConfig id="file-auth-config"
pluginId="cd.go.authentication.passwordfile">

          <property>

            <key>PasswordFilePath</key>

            <value>/etc/go/users.passwd</value>

          </property>

        </authConfig>

      </authConfigs>

      <admins>

        <user>api_user</user>

      </admins>

    </security>

    <mailhost hostname="relay.corp.mendeley.com" port="25" from="
no-re...@gocd-atlas.test.corp.mendeley.com" admin="atlas-t...@elsevier.com"
/>

    <artifacts>

      <artifactsDir>artifacts</artifactsDir>

    </artifacts>

  </server>

  <elastic>```



But then looks like the file getting changed after the sym links creation:

```

bash-5.1$ ls -al /go-working-dir/

total 107804

drwxrwxr-x    1 go       root         16384 Apr 11 09:42 .

drwxr-xr-x    1 root     root            90 Apr 11 09:41 ..

lrwxrwxrwx    1 go       root            17 Apr 11 09:41 artifacts ->
/godata/artifacts

lrwxrwxrwx    1 go       root            14 Apr 11 09:41 bin ->
/go-server/bin

lrwxrwxrwx    1 go       root            14 Apr 11 09:41 config ->
/godata/config

-rw-r--r--    1 go       root     110355285 Apr 11 09:41 cruise.war

lrwxrwxrwx    1 go       root            10 Apr 11 09:41 db -> /godata/db

drwxr-xr-x   11 go       root           141 Apr 11 09:42 felix-cache

lrwxrwxrwx    1 go       root            14 Apr 11 09:41 lib ->
/go-server/lib

lrwxrwxrwx    1 go       root            12 Apr 11 09:41 logs ->
/godata/logs

lrwxrwxrwx    1 go       root            15 Apr 11 09:41 plugins ->
/godata/plugins

drwxr-xr-x   11 go       root         16384 Apr 11 09:42 plugins_work

lrwxrwxrwx    1 go       root            14 Apr 11 09:41 run ->
/go-server/run

drwxr-xr-x    3 go       root            52 Apr 11 09:41 work

lrwxrwxrwx    1 go       root            18 Apr 11 09:41 wrapper ->
/go-server/wrapper

lrwxrwxrwx    1 go       root            25 Apr 11 09:41 wrapper-config ->
/go-server/wrapper-config

bash-5.1$ cat /godata/config/cruise-config.xml

<?xml version="1.0" encoding="utf-8"?>

<cruise xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
xsi:noNamespaceSchemaLocation="cruise-config.xsd" schemaVersion="139">

  <server agentAutoRegisterKey="44eb6cdc-d8d9-4604-abfa-f061bbcbbee1"
webhookSecret="506660f5-21e9-40c4-aa67-78c5cb37cde1"
serverId="f256fbc9-d378-4649-a978-c4ddaca865b7"
tokenGenerationKey="a7dc8993-3209-4459-ac18-85c1e89a5a60">

    <artifacts>

      <artifactsDir>artifacts</artifactsDir>

    </artifacts>

  </server>

</cruise>```



Is that been happening by the entrypoint script as such ?


For information, here is my dockerfile:

```

# Use the official GoCD server image from gocd.org as the base
FROM gocd/gocd-server:v22.3.0

# Environment variables can be set if needed
ENV GO_SERVER_SYSTEM_PROPERTIES=""

# Switch to root user to install additional packages
USER root

# Install additional packages required for your setup
RUN apk update && apk add --no-cache \
    unzip \
    git \
    openssh-client \
    jq \
    ca-certificates \
    curl \
    zip \
 && rm -rf /var/cache/apk/* /var/lib/apt/lists/*

# No custom entrypoint script is used, rely on the base image's entrypoint

# Switch back to the GoCD user for safety
USER go

# Volumes where GoCD expects data to persist, you will mount your EFS to
these locations
VOLUME ["/var/lib/go-server", "/etc/go"]

# Expose ports
EXPOSE 8153 8154

# The ENTRYPOINT from the base image is used, ensuring GoCD starts up as
expected```



Many thanks

Satya

On Thu, Apr 11, 2024 at 11:11 AM Satya Elipe <satya.el...@gmail.com> wrote:

> Thank you Chad.
>
> I see my next issue with that, wherein cruise-config.xml is still not seen
> by the container and uses default or generates its own.
>
> Here is the data on the EFS mount:
> ```
> [ec2-user@ip-10-154-168-49 ~]$ ls -al /mnt/gocd_efs
> total 108252
> drwxr-xr-x. 15 ec2-user root      6144 Apr 11 09:38 .
> drwxr-xr-x.  3 root     root        22 Apr 10 15:57 ..
> drwxr-xr-x.  4 ec2-user root      6144 Dec 16  2020 artifacts
> -rwxr-xr-x.  1 root     root        32 Apr 11 09:38 cipher.aes
> -rwxr-xr-x.  1 root     root        32 Apr 11 09:38
> cipher.aes.16540.2020-12-16@14:08:08~
> drwxr-xr-x.  2 ec2-user root      6144 Apr 11 08:10 config
> -rwxr-xr-x.  1 root     root     14950 Apr 11 09:38 cruise-config.xml
> -rwxr-xr-x.  1 root     root      7382 Apr 11 09:38
> cruise-config.xml.1125.2021-01-19@11:20:26~
> -rwxr-xr-x.  1 root     root     10460 Apr 11 09:38
> cruise-config.xml.invalid.2021-09-27-16-03-30
> -rwxr-xr-x.  1 root     root     47442 Apr 11 09:38 cruise-config.xsd
> -rwxr-xr-x.  1 ec2-user root 110355285 Apr 10 09:28 cruise.war
> drwxr-xr-x.  3 ec2-user root      6144 Dec 16  2020 data
> drwxr-xr-x.  5 ec2-user root      6144 Jul  7  2022 db
> drwxr-xr-x.  3 ec2-user root      6144 Apr 10 18:17 etc_go
> drwxr-xr-x. 12 ec2-user root      6144 Apr 10 09:29 felix-cache
> -rwxr-xr-x.  1 root     root       799 Apr 11 09:38 go_update_server.pub
> drwxr-xr-x.  3 root     root      6144 Apr 11 09:38 godata
> -rwxr-xr-x.  1 root     root      4120 Apr 11 09:38 jetty.xml
> drwxr-xr-x.  2 ec2-user root      6144 Apr 11 08:11 logs
> drwxr-xr-x.  3 ec2-user root      6144 Dec 16  2020 pipelines
> -rwxr-xr-x.  1 ec2-user root       131 Sep 27  2021
> plugin-slack.notifier.log
> drwxr-xr-x.  4 ec2-user root      6144 Apr  4 14:59 plugins
> drwxr-xr-x. 11 ec2-user root      6144 Apr 10 09:29 plugins_work
> drwxr-xr-x.  2 ec2-user root      6144 Apr 10 09:28 run
> -rwxr-xr-x.  1 root     root       144 Apr 11 09:38 users.passwd
> drwxr-xr-x.  3 ec2-user root      6144 Apr 10 09:28 work```
>
> And, /mnt/gocd_efs/cruise-config.xml:
> ```
> [ec2-user@ip-10-154-168-49 ~]$ cat /mnt/gocd_efs/cruise-config.xml
> <?xml version="1.0" encoding="utf-8"?>
> <cruise xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
> xsi:noNamespaceSchemaLocation="cruise-config.xsd" schemaVersion="139">
>         <server jobTimeout="10"
> agentAutoRegisterKey="abcb673ad8de1f6df1afa41eff9ba70e"
> webhookSecret="e7e978e8-b4b1-498f-bd15-ce4c8f6f4240"
> tokenGenerationKey="6a945808-d166-40f2-87ab-a1533fc1edba">
>     <siteUrls>
>       <siteUrl>https://gocd-brxt.corp.mendeley.com/</siteUrl>
>       <secureSiteUrl>https://gocd-brxt.corp.mendeley.com/</secureSiteUrl>
>     </siteUrls>
>     <security>
>       <authConfigs>
>         <authConfig id="file-auth-config"
> pluginId="cd.go.authentication.passwordfile">
>           <property>
>             <key>PasswordFilePath</key>
>             <value>/etc/go/users.passwd</value>
>           </property>
>         </authConfig>
>       </authConfigs>
>       <admins>
>         <user>api_user</user>
>       </admins>
>     </security>
>     <mailhost hostname="relay.corp.mendeley.com" port="25" from="
> no-re...@gocd-atlas.test.corp.mendeley.com" admin="atlas-t...@elsevier.com"
> />
>     <artifacts>
>       <artifactsDir>artifacts</artifactsDir>
>     </artifacts>
>   </server>
>   <elastic>
>     <agentProfiles>
>       <agentProfile id="brxt_gocd.shared-agent-staging-elastic"
> clusterProfileId="eks_brxt_staging_cluster">```
>
>
> And, mounting into the container:
> ```
>   docker run -d \
>   --name gocd-server \
>   -p 8153:8153 \
>   -p 8154:8154 \
>   -v /mnt/gocd_efs:/godata \
>   custom-gocd-server```
>
> And the data in the container:
> ```
> bash-5.1$ ls -al /go-working-dir
> total 107804
> drwxrwxr-x    1 go       root         16384 Apr 11 09:42 .
> drwxr-xr-x    1 root     root            90 Apr 11 09:41 ..
> lrwxrwxrwx    1 go       root            17 Apr 11 09:41 artifacts ->
> /godata/artifacts
> lrwxrwxrwx    1 go       root            14 Apr 11 09:41 bin ->
> /go-server/bin
> lrwxrwxrwx    1 go       root            14 Apr 11 09:41 config ->
> /godata/config
> -rw-r--r--    1 go       root     110355285 Apr 11 09:41 cruise.war
> lrwxrwxrwx    1 go       root            10 Apr 11 09:41 db -> /godata/db
> drwxr-xr-x   11 go       root           141 Apr 11 09:42 felix-cache
> lrwxrwxrwx    1 go       root            14 Apr 11 09:41 lib ->
> /go-server/lib
> lrwxrwxrwx    1 go       root            12 Apr 11 09:41 logs ->
> /godata/logs
> lrwxrwxrwx    1 go       root            15 Apr 11 09:41 plugins ->
> /godata/plugins
> drwxr-xr-x   11 go       root         16384 Apr 11 09:42 plugins_work
> lrwxrwxrwx    1 go       root            14 Apr 11 09:41 run ->
> /go-server/run
> drwxr-xr-x    3 go       root            52 Apr 11 09:41 work
> lrwxrwxrwx    1 go       root            18 Apr 11 09:41 wrapper ->
> /go-server/wrapper
> lrwxrwxrwx    1 go       root            25 Apr 11 09:41 wrapper-config ->
> /go-server/wrapper-config```
>
> And "/godata/config/cruise-config.xml" in the is not same as the one from
> the efs mount:
> ```
> bash-5.1$ cat /godata/config/cruise-config.xml
> <?xml version="1.0" encoding="utf-8"?>
> <cruise xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
> xsi:noNamespaceSchemaLocation="cruise-config.xsd" schemaVersion="139">
>   <server agentAutoRegisterKey="44eb6cdc-d8d9-4604-abfa-f061bbcbbee1"
> webhookSecret="506660f5-21e9-40c4-aa67-78c5cb37cde1"
> serverId="f256fbc9-d378-4649-a978-c4ddaca865b7"
> tokenGenerationKey="a7dc8993-3209-4459-ac18-85c1e89a5a60">
>     <artifacts>
>       <artifactsDir>artifacts</artifactsDir>
>     </artifacts>
>   </server>
> </cruise>```
>
> Wonder where is it going wrong and the container not seeing it, do we have
> to mount them differently ?
>
> Here is what container logs say:
> ```
> /docker-entrypoint.sh: Creating directories and symlinks to hold GoCD
> configuration, data, and logs
> $ ln -sv /godata/artifacts /go-working-dir/artifacts
> '/go-working-dir/artifacts' -> '/godata/artifacts'
> $ mkdir -v -p /godata/config
> created directory: '/godata/config'
> $ ln -sv /godata/config /go-working-dir/config
> '/go-working-dir/config' -> '/godata/config'
> $ ln -sv /godata/db /go-working-dir/db
> '/go-working-dir/db' -> '/godata/db'
> $ mkdir -v -p /godata/logs
> created directory: '/godata/logs'
> $ ln -sv /godata/logs /go-working-dir/logs
> '/go-working-dir/logs' -> '/godata/logs'
> $ ln -sv /godata/plugins /go-working-dir/plugins
> '/go-working-dir/plugins' -> '/godata/plugins'
> /docker-entrypoint.sh: Creating directories and symlinks to hold GoCD
> wrapper binaries
> $ ln -sv /go-server/bin /go-working-dir/bin
> '/go-working-dir/bin' -> '/go-server/bin'
> $ ln -sv /go-server/lib /go-working-dir/lib
> '/go-working-dir/lib' -> '/go-server/lib'
> $ ln -sv /go-server/run /go-working-dir/run
> '/go-working-dir/run' -> '/go-server/run'
> $ ln -sv /go-server/wrapper /go-working-dir/wrapper
> '/go-working-dir/wrapper' -> '/go-server/wrapper'
> $ ln -sv /go-server/wrapper-config /go-working-dir/wrapper-config
> '/go-working-dir/wrapper-config' -> '/go-server/wrapper-config'
> $ cp -rfv /go-server/config/logback-include.xml
> /go-working-dir/config/logback-include.xml
> '/go-server/config/logback-include.xml' ->
> '/go-working-dir/config/logback-include.xml'
> $ install-gocd-plugins
> $ git-clone-config
> $ cd /godata/config
> /docker-entrypoint.sh: Running custom scripts in /docker-entrypoint.d/ ...
> $ sed -i -e s@wrapper.logfile
> =.*@wrapper.logfile=/go-working-dir/logs/go-server-wrapper.log@g -e
> s...@wrapper.java.command=.*@wrapper.java.command=/gocd-jre/bin/java@g -e
> s...@wrapper.working.dir=.*@wrapper.working.dir=/go-working-dir@g
> /go-server/wrapper-config/wrapper.conf
> $ exec /usr/local/sbin/tini -g -- /go-working-dir/bin/go-server console
> Running go-server...
> wrapper  | Failed to set JVM input handle to non blocking mode: Bad file
> descriptor (9)
> wrapper  | Failed to set JVM input handle to close on JVM exit: Bad file
> descriptor (9)
> wrapper  | JVM exited while loading the application.
> wrapper  | Unable to set JVM's stdin: Bad file descriptor
> wrapper  | --> Wrapper Started as Console
> wrapper  | Java Service Wrapper Standard Edition 64-bit 3.5.50
> wrapper  |   Copyright (C) 1999-2022 Tanuki Software, Ltd. All Rights
> Reserved.
> wrapper  |     http://wrapper.tanukisoftware.com
> wrapper  |   Licensed to ThoughtWorks for GoCD Server
> wrapper  |
> wrapper  | Launching a JVM...
> jvm 1    | wrapper  | --> Wrapper Started as Console
> jvm 1    | wrapper  | Java Service Wrapper Standard Edition 64-bit 3.5.50
> jvm 1    | wrapper  |   Copyright (C) 1999-2022 Tanuki Software, Ltd. All
> Rights Reserved.
> jvm 1    | wrapper  |     http://wrapper.tanukisoftware.com
> jvm 1    | wrapper  |   Licensed to ThoughtWorks for GoCD Server
> jvm 1    | wrapper  |
> jvm 1    | wrapper  | Launching a JVM...
> wrapper  | Launching a JVM...
> jvm 2    | WrapperManager: Initializing...
> jvm 2    | [Thu Apr 11 08:10:31 GMT 2024] Starting process:
> jvm 2    | [Thu Apr 11 08:10:31 GMT 2024]   Working directory    :
> /go-working-dir
> jvm 2    | [Thu Apr 11 08:10:31 GMT 2024]   Application arguments: []
> jvm 2    | [Thu Apr 11 08:10:31 GMT 2024]            GoCD Version:
> 22.3.0-15301
> jvm 2    | [Thu Apr 11 08:10:31 GMT 2024]            Java Version: 17.0.5
> jvm 2    | [Thu Apr 11 08:10:31 GMT 2024]        Operating System:
> Linux(6.1.82-99.168.amzn2023.x86_64)
> jvm 2    | Could not find file `config/logback.xml'. Attempting to load
> from classpath.
> jvm 2    | Using classpath resource
> `jar:onejar:lib/server-launcher-22.3.0-15301-main.jar!/config/logback.xml'.
> jvm 2    | 2024-04-11 08:10:33,278 INFO  [WrapperJarAppMain]
> Jetty9Server:193 - Configuring Jetty using /go-working-dir/config/jetty.xml
> jvm 2    | 2024-04-11 08:10:33,356 WARN  [WrapperJarAppMain] Server:357 -
> ErrorPageMapper not supported for Server level Error Handling
> jvm 2    | 2024-04-11 08:10:33,436 WARN  [WrapperJarAppMain]
> AbstractHandler:96 - No Server set for ResourceHandler@67d4b2e7{STOPPED}
> jvm 2    | 2024-04-11 08:10:39,298 WARN  [WrapperJarAppMain]
> ConnectionManager:117 - The file config/db.properties specified by
> `go.db.config` does not exist.
> jvm 2    | 2024-04-11 08:10:40,046 INFO  [WrapperJarAppMain]
> DatabaseMigrator:40 - Upgrading database, this might take a while depending
> on the size of the database.
> jvm 2    |
> ************************************************************************
> jvm 2    | 2024-04-11 08:10:40,047 INFO  [WrapperJarAppMain]
> DatabaseMigrator:49 -
> ************************************************************************
> jvm 2    | WARNING: Shutting down your server at this point will lead to a
> database corruption. Please wait until the database upgrade completes.
> jvm 2    | 2024-04-11 08:10:40,048 INFO  [WrapperJarAppMain]
> DatabaseMigrator:49 - WARNING: Shutting down your server at this point will
> lead to a database corruption. Please wait until the database upgrade
> completes.
> jvm 2    |
> ************************************************************************
> jvm 2    | 2024-04-11 08:10:40,053 INFO  [WrapperJarAppMain]
> DatabaseMigrator:49 -
> ************************************************************************
> jvm 2    | Apr 11, 2024 8:10:40 AM liquibase.database
> jvm 2    | INFO: Set default schema name to PUBLIC
> jvm 2    | Apr 11, 2024 8:10:40 AM liquibase.lockservice
> jvm 2    | INFO: Successfully acquired change log lock
> jvm 2    | Apr 11, 2024 8:10:40 AM liquibase.servicelocator
> jvm 2    | INFO: Cannot load service: liquibase.parser.ChangeLogParser:
> liquibase.parser.core.json.JsonChangeLogParser Unable to get public no-arg
> constructor
> jvm 2    | Apr 11, 2024 8:10:40 AM liquibase.servicelocator
> jvm 2    | INFO: Cannot load service: liquibase.parser.ChangeLogParser:
> liquibase.parser.core.yaml.YamlChangeLogParser Unable to get public no-arg
> constructor
> jvm 2    | Apr 11, 2024 8:10:40 AM liquibase.servicelocator
> jvm 2    | INFO: Cannot load service: liquibase.change.Change:
> liquibase.change.core.LoadDataChange Unable to get public no-arg constructor
> jvm 2    | Apr 11, 2024 8:10:40 AM liquibase.servicelocator
> [ec2-user@ip-10-154-168-49 ~]$
> [ec2-user@ip-10-154-168-49 ~]$
> [ec2-user@ip-10-154-168-49 ~]$
> [ec2-user@ip-10-154-168-49 ~]$
> [ec2-user@ip-10-154-168-49 ~]$ docker exec gocd-server cat
> /go-working-dir/logs/go-server.log
> 2024-04-11 08:10:33,278 INFO  [WrapperJarAppMain] Jetty9Server:193 -
> Configuring Jetty using /go-working-dir/config/jetty.xml
> 2024-04-11 08:10:33,356 WARN  [WrapperJarAppMain] Server:357 -
> ErrorPageMapper not supported for Server level Error Handling
> 2024-04-11 08:10:33,436 WARN  [WrapperJarAppMain] AbstractHandler:96 - No
> Server set for ResourceHandler@67d4b2e7{STOPPED}
> 2024-04-11 08:10:39,298 WARN  [WrapperJarAppMain] ConnectionManager:117 -
> The file config/db.properties specified by `go.db.config` does not exist.
> 2024-04-11 08:10:40,046 INFO  [WrapperJarAppMain] DatabaseMigrator:40 -
> Upgrading database, this might take a while depending on the size of the
> database.
> 2024-04-11 08:10:40,047 INFO  [WrapperJarAppMain] DatabaseMigrator:49 -
> ************************************************************************
> 2024-04-11 08:10:40,048 INFO  [WrapperJarAppMain] DatabaseMigrator:49 -
> WARNING: Shutting down your server at this point will lead to a database
> corruption. Please wait until the database upgrade completes.
> 2024-04-11 08:10:40,053 INFO  [WrapperJarAppMain] DatabaseMigrator:49 -
> ************************************************************************
> 2024-04-11 08:10:42,164 INFO  [WrapperJarAppMain] DatabaseMigrator:57 -
> Database upgrade completed successfully.
> 2024-04-11 08:10:42,170 INFO  [WrapperJarAppMain] DataMigrationRunner:34 -
> Running data migrations...
> 2024-04-11 08:10:42,371 INFO  [WrapperJarAppMain] DataMigrationRunner:49 -
> Data migration took 24 ms
> 2024-04-11 08:10:42,383 INFO  [WrapperJarAppMain] DataMigrationRunner:49 -
> Data migration took 1 ms
> 2024-04-11 08:10:42,388 INFO  [WrapperJarAppMain] DataMigrationRunner:39 -
> Data migrations completed.
> 2024-04-11 08:10:43,745 WARN  [WrapperJarAppMain] ConfigurationFactory:136
> - No configuration found. Configuring ehcache from ehcache-failsafe.xml
>  found in the classpath:
> jar:file:/go-working-dir/work/jetty-0_0_0_0-8153-cruise_war-_go-any-/webapp/WEB-INF/lib/ehcache-2.10.9.2.jar!/ehcache-failsafe.xml
> 2024-04-11 08:10:43,865 WARN  [WrapperJarAppMain] EhCacheProvider:93 -
> Could not find configuration [com.thoughtworks.go.domain.AccessToken];
> using defaults.
> 2024-04-11 08:10:43,935 WARN  [WrapperJarAppMain] EhCacheProvider:93 -
> Could not find configuration
> [com.thoughtworks.go.domain.NotificationFilter]; using defaults.
> 2024-04-11 08:10:44,071 WARN  [WrapperJarAppMain] EhCacheProvider:93 -
> Could not find configuration [com.thoughtworks.go.domain.User]; using
> defaults.
> 2024-04-11 08:10:44,124 WARN  [WrapperJarAppMain] EhCacheProvider:93 -
> Could not find configuration [com.thoughtworks.go.domain.Plugin]; using
> defaults.
> 2024-04-11 08:10:44,159 WARN  [WrapperJarAppMain] EhCacheProvider:93 -
> Could not find configuration
> [com.thoughtworks.go.domain.EnvironmentVariable]; using defaults.
> 2024-04-11 08:10:44,218 WARN  [WrapperJarAppMain] EhCacheProvider:93 -
> Could not find configuration
> [com.thoughtworks.go.domain.User.notificationFilters]; using defaults.
> 2024-04-11 08:10:44,316 WARN  [WrapperJarAppMain] EhCacheProvider:93 -
> Could not find configuration [org.hibernate.cache.UpdateTimestampsCache];
> using defaults.
> 2024-04-11 08:10:44,328 WARN  [WrapperJarAppMain] EhCacheProvider:93 -
> Could not find configuration [org.hibernate.cache.StandardQueryCache];
> using defaults.
> 2024-04-11 08:10:47,228 WARN  [WrapperJarAppMain] BrokerService:2116 -
> Temporary Store limit is 51200 mb (current store usage is 0 mb). The data
> directory: /go-working-dir only has 5097 mb of usable space. - resetting to
> maximum available disk space: 5097 mb
> 2024-04-11 08:10:47,478 INFO  [WrapperJarAppMain] ConnectionManager:98 -
> Done loading query extensions, found
> com.thoughtworks.go.server.database.h2.H2QueryExtensions@7b3c0f16
> 2024-04-11 08:10:48,190 INFO  [WrapperJarAppMain] AESCipherProvider:61 -
> AES cipher not found. Creating a new cipher file
> 2024-04-11 08:10:55,360 INFO  [WrapperJarAppMain] GoConfigMigration:94 -
> Upgrading config file from version 139 to version 139
> 2024-04-11 08:10:55,419 INFO  [WrapperJarAppMain] GoConfigMigration:102 -
> Finished upgrading config file
> 2024-04-11 08:10:55,424 INFO  [WrapperJarAppMain] GoConfigMigrator:106 -
> [Config Save] Starting Config Save post upgrade using
> FullConfigSaveNormalFlow
> 2024-04-11 08:10:55,518 INFO  [Thread-79]
> DefaultPluginJarChangeListener:67 - Plugin load starting:
> /go-working-dir/plugins/bundled/gocd-ldap-authentication-plugin.jar
> 2024-04-11 08:10:56,057 INFO  [WrapperJarAppMain] CachedGoConfig:223 -
> About to notify config listeners
> 2024-04-11 08:10:56,059 INFO  [WrapperJarAppMain] CachedGoConfig:231 -
> Finished notifying all listeners
> 2024-04-11 08:10:56,083 WARN  [Thread-79] PluginSettingsMetadataLoader:63
> - Failed to fetch plugin settings metadata for plugin
> cd.go.authentication.ldap. Maybe the plugin does not implement plugin
> settings and view?
> 2024-04-11 08:10:56,088 WARN  [Thread-79] PluginSettingsMetadataLoader:64
> - Plugin: cd.go.authentication.ldap - Metadata load info:
> [{extension='authorization', configuration='null', view='null', error='The
> plugin sent a response that could not be understood by Go. Plugin returned
> with code '500' and the following response: 'This is an invalid request
> type :go.plugin-settings.get-configuration''}]
> 2024-04-11 08:10:56,089 WARN  [Thread-79] PluginSettingsMetadataLoader:65
> - Not all plugins are required to implement the request above. This error
> may be safe to ignore.
> 2024-04-11 08:10:56,090 INFO  [Thread-79]
> DefaultPluginJarChangeListener:74 - Plugin load finished:
> /go-working-dir/plugins/bundled/gocd-ldap-authentication-plugin.jar
> 2024-04-11 08:10:56,133 INFO  [Thread-79]
> DefaultPluginJarChangeListener:67 - Plugin load starting:
> /go-working-dir/plugins/bundled/gocd-file-based-secrets-plugin.jar
> 2024-04-11 08:10:56,314 ERROR [Thread-79] DefaultPluginManager:136 - This
> is an invalid request type :go.plugin-settings.get-configuration
> 2024-04-11 08:10:56,314 WARN  [Thread-79] PluginSettingsMetadataLoader:63
> - Failed to fetch plugin settings metadata for plugin
> cd.go.secrets.file-based-plugin. Maybe the plugin does not implement plugin
> settings and view?
> 2024-04-11 08:10:56,314 WARN  [Thread-79] PluginSettingsMetadataLoader:64
> - Plugin: cd.go.secrets.file-based-plugin - Metadata load info:
> [{extension='secrets', configuration='null', view='null',
> error='com.thoughtworks.go.plugin.api.exceptions.UnhandledRequestTypeException:
> This is an invalid request type :go.plugin-settings.get-configuration'}]
> 2024-04-11 08:10:56,314 WARN  [Thread-79] PluginSettingsMetadataLoader:65
> - Not all plugins are required to implement the request above. This error
> may be safe to ignore.
> 2024-04-11 08:10:56,441 INFO  [WrapperJarAppMain]
> BuildAssignmentService:250 - [Configuration Changed] Removing jobs for
> pipelines that no longer exist in configuration.
> 2024-04-11 08:10:56,442 INFO  [Thread-79]
> DefaultPluginJarChangeListener:74 - Plugin load finished:
> /go-working-dir/plugins/bundled/gocd-file-based-secrets-plugin.jar
> 2024-04-11 08:10:56,478 INFO  [Thread-79]
> DefaultPluginJarChangeListener:67 - Plugin load starting:
> /go-working-dir/plugins/bundled/gocd-yum-repository-poller-plugin.jar
> 2024-04-11 08:10:56,479 INFO  [WrapperJarAppMain]
> InvalidateAuthenticationOnSecurityConfigChangeFilter:78 - [Configuration
> Changed] Security Configuration is changed. Updating the last changed time.
> 2024-04-11 08:10:56,498 INFO  [WrapperJarAppMain] PipelineRepository:78 -
> Start updating pipeline timeline
> 2024-04-11 08:10:56,879 WARN  [Thread-79] PluginSettingsMetadataLoader:63
> - Failed to fetch plugin settings metadata for plugin yum. Maybe the plugin
> does not implement plugin settings and view?
> 2024-04-11 08:10:56,879 WARN  [Thread-79] PluginSettingsMetadataLoader:64
> - Plugin: yum - Metadata load info: [{extension='package-repository',
> configuration='null', view='null', error='The plugin sent a response that
> could not be understood by Go. Plugin returned with code '400' and the
> following response: 'Invalid request name
> go.plugin-settings.get-configuration''}]
> 2024-04-11 08:10:56,879 WARN  [Thread-79] PluginSettingsMetadataLoader:65
> - Not all plugins are required to implement the request above. This error
> may be safe to ignore.
> 2024-04-11 08:10:56,998 INFO  [WrapperJarAppMain] PipelineRepository:84 -
> Pipeline timeline updated
> 2024-04-11 08:10:56,999 INFO  [WrapperJarAppMain] PipelineSqlMapDao:132 -
> Loading active pipelines into memory.
> 2024-04-11 08:10:56,999 INFO  [WrapperJarAppMain] PipelineSqlMapDao:383 -
> Retriving Active Pipelines from Database...
> 2024-04-11 08:10:57,012 ERROR [Thread-79] PluginInfoBuilder:54 - Failed to
> fetch Plugin Settings metadata for plugin yum. Maybe the plugin does not
> implement plugin settings and view?
> 2024-04-11 08:10:57,018 INFO  [Thread-79]
> DefaultPluginJarChangeListener:74 - Plugin load finished:
> /go-working-dir/plugins/bundled/gocd-yum-repository-poller-plugin.jar
> 2024-04-11 08:10:57,057 INFO  [Thread-79]
> DefaultPluginJarChangeListener:67 - Plugin load starting:
> /go-working-dir/plugins/bundled/gocd-json-config-plugin.jar
> 2024-04-11 08:10:57,303 INFO  [Thread-82] PipelineSqlMapDao:419 - Loading
> pipeline history to cache...Started
> 2024-04-11 08:10:57,305 INFO  [Thread-82] PipelineSqlMapDao:423 - Loading
> pipeline history to cache...Done
> 2024-04-11 08:10:57,310 WARN  [WrapperJarAppMain] PipelineSqlMapDao:450 -
> No pipelines found in Config, Skipping material revision caching.
> 2024-04-11 08:10:57,310 INFO  [Thread-81] PipelineSqlMapDao:413 - Loading
> Active Pipelines to cache...Started
> 2024-04-11 08:10:57,311 INFO  [Thread-81] PipelineSqlMapDao:416 - Loading
> Active Pipelines to cache...Done
> 2024-04-11 08:10:57,311 INFO  [WrapperJarAppMain] PipelineSqlMapDao:134 -
> Done loading active pipelines into memory.
> 2024-04-11 08:10:58,904 INFO  [Thread-79] ConfigRepositoryInitializer:108
> - [Config Repository Initializer] Start initializing the config
> repositories for plugin 'json.config.plugin'
> 2024-04-11 08:10:58,909 INFO  [Thread-79] ConfigRepositoryInitializer:112
> - [Config Repository Initializer] Done initializing the config repositories
> for plugin 'json.config.plugin'
> 2024-04-11 08:10:58,956 INFO  [Thread-79]
> DefaultPluginJarChangeListener:74 - Plugin load finished:
> /go-working-dir/plugins/bundled/gocd-json-config-plugin.jar
> 2024-04-11 08:10:59,014 INFO  [Thread-79]
> DefaultPluginJarChangeListener:67 - Plugin load starting:
> /go-working-dir/plugins/bundled/gocd-filebased-authentication-plugin.jar
> 2024-04-11 08:10:59,226 INFO  [WrapperJarAppMain]
> ConsoleActivityMonitor:78 - Found '0' building jobs. Added them with
> '2024-04-11T08:10:57.311Z' as the last heard time
> 2024-04-11 08:10:59,245 INFO  [WrapperJarAppMain]
> ConsoleActivityMonitor:79 - Found '0' scheduled jobs. Added them with
> '2024-04-11T08:10:57.311Z' as the last heard time
> 2024-04-11 08:10:59,261 INFO  [WrapperJarAppMain] RailsAssetsService:68 -
> Found rails assets manifest file named
> .sprockets-manifest-33237067f8bbd7d7d3ed31a1f9d514b9.json
> 2024-04-11 08:10:59,286 INFO  [WrapperJarAppMain] RailsAssetsService:72 -
> Successfully read rails assets manifest file located at
> /go-working-dir/work/jetty-0_0_0_0-8153-cruise_war-_go-any-/webapp/WEB-INF/rails/public/assets/.sprockets-manifest-33237067f8bbd7d7d3ed31a1f9d514b9.json
> 2024-04-11 08:10:59,316 WARN  [Thread-79] PluginSettingsMetadataLoader:63
> - Failed to fetch plugin settings metadata for plugin
> cd.go.authentication.passwordfile. Maybe the plugin does not implement
> plugin settings and view?
> 2024-04-11 08:10:59,317 WARN  [Thread-79] PluginSettingsMetadataLoader:64
> - Plugin: cd.go.authentication.passwordfile - Metadata load info:
> [{extension='authorization', configuration='null', view='null', error='The
> plugin sent a response that could not be understood by Go. Plugin returned
> with code '500' and the following response: 'Request
> go.plugin-settings.get-configuration is not supported by plugin.''}]
> 2024-04-11 08:10:59,317 WARN  [Thread-79] PluginSettingsMetadataLoader:65
> - Not all plugins are required to implement the request above. This error
> may be safe to ignore.
> 2024-04-11 08:10:59,318 INFO  [Thread-79]
> DefaultPluginJarChangeListener:74 - Plugin load finished:
> /go-working-dir/plugins/bundled/gocd-filebased-authentication-plugin.jar
> 2024-04-11 08:10:59,359 INFO  [Thread-79]
> DefaultPluginJarChangeListener:67 - Plugin load starting:
> /go-working-dir/plugins/bundled/gocd-yaml-config-plugin.jar
> 2024-04-11 08:11:01,493 INFO  [Thread-79] ConfigRepositoryInitializer:108
> - [Config Repository Initializer] Start initializing the config
> repositories for plugin 'yaml.config.plugin'
> 2024-04-11 08:11:01,499 INFO  [Thread-79] ConfigRepositoryInitializer:112
> - [Config Repository Initializer] Done initializing the config repositories
> for plugin 'yaml.config.plugin'
> 2024-04-11 08:11:01,538 INFO  [Thread-79]
> DefaultPluginJarChangeListener:74 - Plugin load finished:
> /go-working-dir/plugins/bundled/gocd-yaml-config-plugin.jar
> 2024-04-11 08:11:01,579 INFO  [Thread-79]
> DefaultPluginJarChangeListener:67 - Plugin load starting:
> /go-working-dir/plugins/external/gocd-slack-notifier-1.4.0.jar
> 2024-04-11 08:11:01,710 ERROR [Thread-79] PluginLoader:121 - Failed to
> load plugin: plugins_work/gocd-slack-notifier-1.4.0.jar. Plugin is invalid.
> Reasons [Class [GoNotificationPlugin] is annotated with @Extension but
> cannot be constructed. Reason: java.lang.RuntimeException: Unable to find
> go_notify.conf. Please make sure you've set it up right.., No extensions
> found in this plugin. Please check for @Extension annotations]
> 2024-04-11 08:11:01,723 INFO  [Thread-79]
> DefaultPluginJarChangeListener:74 - Plugin load finished:
> /go-working-dir/plugins/external/gocd-slack-notifier-1.4.0.jar
> 2024-04-11 08:11:01,763 INFO  [Thread-79]
> DefaultPluginJarChangeListener:67 - Plugin load starting:
> /go-working-dir/plugins/external/gocd-ec2-elastic-agent-plugin-2.2.2.jar
> 2024-04-11 08:11:02,693 INFO  [Thread-79] GoConfigDao:108 - Config update
> request by anonymous is in queue -
> com.thoughtworks.go.config.update.ReplaceElasticAgentInformationCommand@424dd8d0
> 2024-04-11 08:11:02,705 INFO  [Thread-79] GoConfigDao:111 - Config update
> request
> com.thoughtworks.go.config.update.ReplaceElasticAgentInformationCommand@424dd8d0
> by anonymous is being processed
> 2024-04-11 08:11:02,832 INFO  [Thread-79] MagicalGoConfigXmlWriter:85 -
> [Serializing Config] Generating config partial.
> 2024-04-11 08:11:02,908 INFO  [Thread-79] GoFileConfigDataSource:587 -
> [Configuration Changed] Saving updated configuration.
> 2024-04-11 08:11:02,936 INFO  [Thread-79] CachedGoConfig:223 - About to
> notify config listeners
> 2024-04-11 08:11:02,941 INFO  [Thread-79] BuildAssignmentService:250 -
> [Configuration Changed] Removing jobs for pipelines that no longer exist in
> configuration.
> 2024-04-11 08:11:02,944 INFO  [Thread-79] CachedGoConfig:231 - Finished
> notifying all listeners
> 2024-04-11 08:11:02,945 INFO  [Thread-79] GoConfigDao:126 - Config update
> request by anonymous is completed
> 2024-04-11 08:11:02,985 WARN  [Thread-79] PluginSettingsMetadataLoader:63
> - Failed to fetch plugin settings metadata for plugin
> com.continuumsecurity.elasticagent.ec2. Maybe the plugin does not implement
> plugin settings and view?
> 2024-04-11 08:11:02,986 WARN  [Thread-79] PluginSettingsMetadataLoader:64
> - Plugin: com.continuumsecurity.elasticagent.ec2 - Metadata load info:
> [{extension='elastic-agent', configuration='null', view='null',
> error='java.lang.NullPointerException: Cannot invoke
> "com.continuumsecurity.elasticagent.ec2.Request.ordinal()" because the
> return value of
> "com.continuumsecurity.elasticagent.ec2.Request.fromString(String)" is
> null'}]
> 2024-04-11 08:11:02,986 WARN  [Thread-79] PluginSettingsMetadataLoader:65
> - Not all plugins are required to implement the request above. This error
> may be safe to ignore.
> 2024-04-11 08:11:03,022 INFO  [Thread-79]
> DefaultPluginJarChangeListener:74 - Plugin load finished:
> /go-working-dir/plugins/external/gocd-ec2-elastic-agent-plugin-2.2.2.jar
> 2024-04-11 08:11:03,057 INFO  [Thread-79]
> DefaultPluginJarChangeListener:67 - Plugin load starting:
> /go-working-dir/plugins/external/gocd-groovy-dsl-config-plugin-2.0.0-241.jar
> 2024-04-11 08:11:03,972 INFO  [Thread-79] ConfigRepositoryInitializer:108
> - [Config Repository Initializer] Start initializing the config
> repositories for plugin 'cd.go.contrib.plugins.configrepo.groovy'
> 2024-04-11 08:11:03,977 INFO  [Thread-79] ConfigRepositoryInitializer:112
> - [Config Repository Initializer] Done initializing the config repositories
> for plugin 'cd.go.contrib.plugins.configrepo.groovy'
> 2024-04-11 08:11:04,109 ERROR [Thread-79] PluginInfoBuilder:54 - Failed to
> fetch Plugin Settings metadata for plugin
> cd.go.contrib.plugins.configrepo.groovy. Maybe the plugin does not
> implement plugin settings and view?
> 2024-04-11 08:11:04,119 INFO  [Thread-79]
> DefaultPluginJarChangeListener:74 - Plugin load finished:
> /go-working-dir/plugins/external/gocd-groovy-dsl-config-plugin-2.0.0-241.jar
> 2024-04-11 08:11:21,924 WARN  [WrapperJarAppMain] DeprecationWarning:43 -
> Using @Deprecated Class com.thoughtworks.go.server.web.DefaultHeadersFilter
> 2024-04-11 08:14:11,360 WARN  [qtp1067095815-35]
> FeatureToggleRepository:69 - Toggles file,
> /go-working-dir/config/go.feature.toggles does not exist. Saying there are
> no toggles.
> 2024-04-11 08:15:57,695 INFO  [qtp1067095815-35]
> ServerVersionInfoManager:71 - [Go Update Check] Starting update check at:
> Thu Apr 11 08:15:57 GMT 2024
> 2024-04-11 08:15:58,220 INFO  [qtp1067095815-27]
> ServerVersionInfoManager:86 - [Go Update Check] Update check done at: Thu
> Apr 11 08:15:58 GMT 2024, latest available version: 23.5.0-18179```
>
> Many thanks
> Satya
>
> On Thu, Apr 11, 2024 at 2:48 AM Chad Wilson <ch...@thoughtworks.com>
> wrote:
>
>> Hi Satya
>>
>> When running a standard GoCD docker server image, you should mount a
>> writable volume to the entire */godata* directory which includes the
>> config as noted at https://hub.docker.com/r/gocd/gocd-server, but not
>> directly to an individual config file.
>>
>> If you do not, even if you get the config working properly, you'll lose
>> other things such as artifacts at startup which you generally do not want.
>>
>> You are getting this error likely because the server ID inside the go
>> config does not match what is inside the configuration history, which is
>> normally at /godata/db/config.git (The GoCD Docker entrypoint script
>> creates the symlinks into /go-working-dir within the docker-entrypoint.sh
>> <https://github.com/gocd/docker-gocd-server/blob/master/docker-entrypoint.sh>),
>> so these things need to be mounted together and consistent.
>>
>> I don't think your mounts to /var/lib/go-server or /etc/go will be doing
>> anything, as these folders are not used for *off-the-shelf* docker
>> server images, since the server is not installed as an rpm/deb package when
>> creating a container. You can/should likely remove these.
>>
>> In a general sense, all you should need to do is mount a location in EFS
>> to /godata, similar to what the Helm chart does:
>> https://github.com/gocd/helm-chart/blob/c734ad2263b1d2885229d00267c428e88f868504/gocd/templates/gocd-server-deployment.yaml#L122-L124
>> That will put all logs, artifacts, databases and config on your volume.
>> Some folks decide to also mount /home/go if they want to use external
>> storage for things like Git SSH keys or other shell defaults affecting the
>> *go* user, but that's optional.
>>
>> -Chad
>>
>> On Thu, Apr 11, 2024 at 5:34 AM Satya Elipe <satya.el...@gmail.com>
>> wrote:
>>
>>>
>>> Dear GoCD Support Team,
>>>
>>>
>>> I hope this message finds you well. I am currently encountering an issue
>>> with setting up GoCD on Docker and specifically with configuring the
>>> cruise-config.xml file to be recognized correctly in my setup. Despite
>>> following the official documentation and trying various configurations,
>>> I've hit a stumbling block that I hope you can help me with.
>>>
>>>
>>> *Issue Summary:*
>>>
>>> I have a GoCD server running in a Docker container, and I'm attempting
>>> to ensure that the cruise-config.xml file is correctly picked up from a
>>> specified location. My goal is to mount this configuration file from an
>>> external volume into the GoCD server container so that the server uses this
>>> configuration instead of the default one.
>>>
>>> *Configuration Details:*
>>>
>>>    - *GoCD Server Image Version:* gocd/gocd-server:v22.3.0
>>>    - *Docker Version:* Docker version 25.0.3, build 4debf41
>>>    - *Host Operating System:* Amazon Linux 2023
>>>
>>> *Docker Run Command:*
>>>
>>> docker run -d \
>>>
>>>   --name gocd-server \
>>>
>>>   -p 8153:8153 \
>>>
>>>   -p 8154:8154 \
>>>
>>>   -v /mnt/gocd_efs:/var/lib/go-server \
>>>
>>>   -v
>>> /mnt/gocd_efs/etc_go/cruise-config.xml:/go-working-dir/config/cruise-config.xml
>>> \
>>>
>>>   -v /mnt/gocd_efs/etc_go:/etc/go \
>>>
>>>   custom-gocd-server
>>>
>>>
>>>
>>> *Issue Encountered:*
>>>
>>> When including the -v
>>> /mnt/gocd_efs/etc_go/cruise-config.xml:/go-working-dir/config/cruise-config.xml
>>> volume mount, the GoCD server fails to start correctly, with logs
>>> indicating an inability to create or copy necessary files within
>>> /go-working-dir/config.
>>>
>>>
>>> Without this mount, the server starts but does not load the desired
>>> configuration, defaulting instead to the initial configuration without any
>>> of our pipeline configurations.
>>>
>>>
>>> Log snippet:
>>> ```
>>> jvm 1    | 2024-04-10 20:55:17,429 ERROR [Thread-79]
>>> GoFileConfigDataSource:436 - Unable to load config file:
>>> /go-working-dir/config/cruise-config.xml The value of 'serverId' uniquely
>>> identifies a Go server instance. This field cannot be modified.
>>>
>>> ```
>>>
>>>
>>>
>>> *Questions:*
>>>
>>>    - Is there a recommended approach to ensure cruise-config.xml is
>>>    correctly recognized and used by the GoCD server when running in Docker?
>>>    - Could this issue be related to how volumes are mounted or
>>>    permissions within the container?
>>>
>>>
>>> Any assistance or insights you could provide on this matter would be
>>> greatly appreciated. I am happy to provide any further information or logs
>>> as needed.
>>>
>>> Thank you for your time and support.
>>>
>>>
>>>
>>> Best regards,
>>>
>>> Satya
>>>
>>> --
>>> You received this message because you are subscribed to the Google
>>> Groups "go-cd" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to go-cd+unsubscr...@googlegroups.com.
>>> To view this discussion on the web visit
>>> https://groups.google.com/d/msgid/go-cd/CADKEDRrF7KRFP9jNsg631STyokXS1Njqutdshd0ZKdwHMRTy6g%40mail.gmail.com
>>> <https://groups.google.com/d/msgid/go-cd/CADKEDRrF7KRFP9jNsg631STyokXS1Njqutdshd0ZKdwHMRTy6g%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>> .
>>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "go-cd" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to go-cd+unsubscr...@googlegroups.com.
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/go-cd/CAA1RwH-%3DFtT%3DDoPvoCekei%2BncFGgC2CSxu7DS7QgZWQ_QH3%3DwQ%40mail.gmail.com
>> <https://groups.google.com/d/msgid/go-cd/CAA1RwH-%3DFtT%3DDoPvoCekei%2BncFGgC2CSxu7DS7QgZWQ_QH3%3DwQ%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"go-cd" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to go-cd+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/go-cd/CADKEDRoA4-tYUgRbD7ob2WgGC1M4jNQWkJFhezSMn_CtV%3DhS_w%40mail.gmail.com.

Reply via email to