392 Commits

Author SHA1 Message Date
Kazunori Kimura
7140f0342b Fix unused client removal on restarted container
Handle the case where the target does not exist
in the process of deleting unused clients.
Such a situation will not occur in newly launched containers,
but will occur if they are restarted.

During container restarts, container status are preserved.
If the unused database client was deleted in the last run,
grep will not match anything.
It returns non-zero code and the container stops there
because entrypoint sets option `-e`
(exit immediately on non-zero exit code excluding some special cases)

This commit make the uninstall process to handle the case
UNUSED_DB_CLIENTS is empty.
2023-06-02 22:12:29 +09:00
Steven Achilles
5fc732eb3c Add new configuration options for database.yml 2023-05-25 06:44:20 +02:00
Kazunori Kimura
598a666693 Add -y option on uninstalling unused db client
Co-authored-by: Steven Achilles <steven.achilles@googlemail.com>
Co-authored-by: @f-io
2023-05-25 12:44:32 +09:00
Kazunori Kimura
24e2b581fb Use purge instead to uninstall unused db clients
Instead of `remove` that does not remove actual files.

Co-authored-by: @f-io
2023-05-24 20:26:15 +09:00
Kazunori Kimura
b3b700a701 Uninstall unused postgresql-client on startup
Unused clients are determinate by checking ~/.postgresqlrc
Uninstall logs like the following will appear in the docker log:

- Uninstalling unused version(s) of client: postgresql-client-12
2023-05-12 06:58:11 +09:00
Kazunori Kimura
260f548c5b Ship with multiple versions of postgresql-client
It is intended to work even in environments without an internet connection.

- Use latest version of pg_isready on checking database connection
- Switch postgresql-client version checking server on startup
- If the server versions do not match exactly, use the latest installed client
  and warn on docker log

From postgresql documentation:
https://www.postgresql.org/docs/15/app-pgdump.html#PG-DUMP-NOTES

> Also, it is not guaranteed that pg_dump's output can be loaded
> into a server of an older major version — not even if the dump
> was taken from a server of that version.

To switch client version, generate a file ~/.postgresqlrc with content like:

{server side major version} {server hostname}:{server port} {default database}

See detail on:
https://manpages.ubuntu.com/manpages/bionic/man5/postgresqlrc.5.html

Following messages appear on docker log:

- Detected server version: 140007
- Generating /home/git/.postgresqlrc
2023-05-12 06:58:11 +09:00
Kazunori Kimura
255ec9461a Increase default SIDEKIQ_MEMORY_KILLER_MAX_RSS to 2GB
There are many warnings like below
recorded in {GITLAB_LOG_DIR}/supervisord/sidekiq.log.
This can be avoided by simply increasing SIDEKIQ_MEMORY_KILLER_MAX_RSS.

----
{
  "severity": "WARN",
  "time": "[MASKED]",
  "class": "Gitlab::SidekiqDaemon::MemoryKiller",
  "pid": [MASKED],
  "message": "Sidekiq worker RSS out of range",
  "current_rss": 1009636,
  "soft_limit_rss": 1000000,
  "hard_limit_rss": [MASKED],
  "memory_total_kb": [MASKED],
  "reason": "current_rss(1009636) \u003e soft_limit_rss(1000000)",
  "running_jobs": [],
  "retry": 0
}
----

For sameersbn/gitlab, this parameter have been introduced with
following commit on May 21, 2015 and never updated until today:
e4008cc7ab9efd626511af4c43e52e2a9490d612

On upstream, the default setting documentation is updated here:
  https://gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/31682
but it is said "the documentation is outdated" at this time.
I could not find out when the value is increased.

At least, In omnibus-gitlab, this have been introduced in MR 2360
(release 11.10.0+ce.0 / 11.10.0+ee.0)
https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/2360
2023-02-22 04:00:45 +09:00
kkkkkks0
f408585d8b
fixes sameersbn#2645 2022-10-20 18:58:03 +08:00
Ivan Baranov
8b9ca622f9 Tested support for azure_activedirectory_v2 2022-09-05 21:46:20 +09:00
Steven Achilles
b34d48af65
Merge pull request #2594 from Syphon83/terraform_state_fix
refs https://github.com/sameersbn/docker-gitlab/issues/2593: fix env default variable for terraform state
2022-07-02 15:47:07 +02:00
Poppo
7d0739218f fix env default variable 2022-06-24 20:12:32 +02:00
Kazunori Kimura
844d57dad2 update *:object_store:enabled regardless of the value
apply for artifact,packages,terraform_state,lfs,uploads
2022-06-21 08:46:05 +09:00
haroldsamuels87
944a638a28
fixed a typo
took me 5 HOURS to find this tiny little typo.
2022-05-12 18:13:55 +04:30
Steven Achilles
a02abdce2d Address inconsistencies when using git (packaged with gitaly). 2022-05-03 17:58:58 +02:00
Steven Achilles
073eb52cb2
Merge pull request #2438 from peter-jozsa/allow-to-config-terraform-state
Allow to configure Terraform State
2022-04-22 16:15:01 +02:00
Péter Józsa
82e88ff0ad create terraform state directory based on new configuration variables during datadir initialization
#2501
2022-04-11 12:13:28 +02:00
Péter Józsa
7374743a0f fix wrong footer comment of GCS related terraform state configuration 2022-04-11 12:13:21 +02:00
Péter Józsa
4752be956c Allow to configure terraform state feature 2022-04-11 12:13:09 +02:00
Poppo
86a329086a refs https://github.com/sameersbn/docker-gitlab/issues/2538: Fix Variables for UPLOADS in GCP 2022-04-08 17:10:45 +02:00
Steven Achilles
1a091cea44
Merge pull request #2511 from getfloret/master
Fix: HealthCheck Script will Fail if the ENV GITLAB_HTTPS set True
2022-03-29 20:45:41 +02:00
AlpsTsui
def7ef5fea Fix: HealthCheck Script will Fail if the ENV GITLAB_HTTPS set True 2022-03-29 22:22:31 +08:00
Kazunori Kimura
e91d9b5f7c support GITLAB_ISSUE_CLOSING_PATTERN 2022-03-27 07:28:01 +09:00
Kazunori Kimura
a9b4feb77b add NGINX_CUSTOM_GITLAB_SERVER_CONFIG 2022-03-04 22:49:52 +09:00
Kazunori Kimura
4943e1ffc0 replace non-break space with normal space
especially, rails warns when "non-break space" found
in configuration file (such as cable.yml)
2022-02-19 14:02:16 +09:00
Kazunori Kimura
2448c6aada add terraform/packages dir to initialize_datadir()
Also add them to sanitize_datadir()

Note that the backup will fail if these directories do not exist
with each feature enabled.
2022-01-28 02:12:35 +09:00
Paolo Mainardi
09e76bb2e7 Missing redis db number 2022-01-03 18:28:10 +01:00
Paolo Mainardi
0a24da2cfe Copy cable.yml template file 2022-01-03 16:54:08 +01:00
Paolo Mainardi
36330f5366 Support actioncable 2022-01-03 16:32:16 +01:00
Steven Achilles
d4ede13e38 Use new syntax for 'config/database.yml' 2021-12-29 22:03:57 +01:00
sue445
82576f27d0 Fixed Pages config not being created when GITLAB_PAGES_ACCESS_CONTROL was disabled 2021-12-09 22:24:30 +01:00
Kazunori Kimura
729a00a3c9 remove runtime/config/gitlabhq/rack_attack.rb 2021-10-09 15:45:11 +09:00
Jonathan Kline
f323481206 Corrected a typo in the artifacts section to allow proper updating and
replacement of the AWS_SIGNING_VERSION for artifacts
2021-08-02 16:39:10 -05:00
Akanoa
e2354ed8aa feat: Add "AWS_SIGNATURE_VERSION" related environment variables 2021-07-30 22:41:31 +00:00
Akanoa
cfa1fe2e28 fix: bad default value 2021-07-30 16:32:24 +00:00
Akanoa
bed4200b02 feat: allow to configure the packages registry from environment variables 2021-07-30 16:32:24 +00:00
sue445
73dae28e31 Pass {{GITLAB_INSTALL_DIR}} to gitlab-pages/config 2021-07-21 09:38:37 +09:00
sue445
50bad15845 Resolved. GitLab Pages doesn't work since GitLab v14.0
ref. #2375

As I can see from the error message below, it looks like both
`api-secret-key` and `gitlab-server` (or `internal-gitlab-server` ) are required since GitLab v14.0

```
time="2021-06-28T02:28:34Z" level=fatal msg="could not create domains config source" error="GitLab API URL or API secret has not been provided"
```

https://gitlab.com/gitlab-org/gitlab-pages/-/blob/v1.41.0/internal/source/gitlab/client/client.go#L50-52
2021-07-20 18:38:04 +09:00
Sameer Naik
6ed4aa776c fixed typo 2021-07-01 19:06:26 +02:00
G.J.R. Timmer
e194e7d8d0 moved default TIMEZONE variable to env-defaults
Resolve conversation
2021-07-01 19:06:26 +02:00
Gert-Jan Timmer
9180bed1fe fix Container TimeZone
Fix Container TimeZone


Fix Container TimeZone
2021-07-01 19:06:26 +02:00
Sameer Naik
09b8c1c265
Merge pull request #1884 from taomaree/custom_hooks_dir
Add support for GITLAB_SHELL_CUSTOM_HOOKS_DIR
2021-06-23 10:46:02 +05:30
Sameer Naik
6b619f4891
Merge pull request #2311 from sue445/csp_params
Add content_security_policy params
2021-06-23 10:45:20 +05:30
Sameer Naik
7b25affe22
Merge pull request #2321 from l00v3/add_prevent_ldap_sign_in
Add LDAP_PREVENT_LDAP_SIGN_IN configuration parameter
2021-06-21 10:31:36 +05:30
Rene Gärtner
bb6a889e0b added OAUTH_AUTO_LINK_USER option 2021-04-30 14:17:28 +02:00
sue445
b820c61f33 Add content_security_policy params 2021-04-18 23:28:28 +09:00
Kazunori Kimura
4ccb8eefb5 Support healthcheck with relative URL
traditional one with relative url always returns 404 (unhealthy).
Now we can use ${GITLAB_RELATIVE_URL_ROOT} variable to set healcheck URL
after moving script generation to runtime,
2021-04-08 21:12:19 +09:00
l00v3
9b7536a32e Add LDAP_PREVENT_LDAP_SIGN_IN configuration parameter
Committer: l00v3 <love@localhost.localdomain>
2021-03-12 11:59:03 +01:00
Sameer Naik
950b1e8242
Merge pull request #2183 from galet/master
Obfuscate access_token and private_token in nginx access log
2021-03-10 14:37:52 +05:30
Sameer Naik
adf79a6c11 functions: properly delete the bitbucket auth config when not in use 2021-03-10 13:42:54 +05:30
Sameer Naik
ebcd5bac34
Merge pull request #2310 from brunoleon/fix_bitbucket
Set default value for BITBUCKET_URL
2021-03-10 10:30:59 +05:30