Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update Couchbase Server EE to 6.6.0 #8523

Merged
merged 1 commit into from
Aug 11, 2020
Merged

Conversation

ceejatec
Copy link
Contributor

No description provided.

@github-actions
Copy link

Diff for a6ef0c4:
diff --git a/_bashbrew-cat b/_bashbrew-cat
index fd70bf5..b58e69a 100644
--- a/_bashbrew-cat
+++ b/_bashbrew-cat
@@ -6,12 +6,7 @@ GitRepo: https://github.com/couchbase/docker
 GitCommit: f17df7695bbd6efb756b90b683bd5f34d08b5708
 Directory: community/couchbase-server/6.5.1
 
-Tags: enterprise-6.5.0
+Tags: latest, enterprise, 6.6.0, enterprise-6.6.0
 GitRepo: https://github.com/couchbase/docker
-GitCommit: 46de65611374973ecf7ec28b0c582a8175d3bda0
-Directory: enterprise/couchbase-server/6.5.0
-
-Tags: latest, enterprise, 6.5.1, enterprise-6.5.1
-GitRepo: https://github.com/couchbase/docker
-GitCommit: 46de65611374973ecf7ec28b0c582a8175d3bda0
-Directory: enterprise/couchbase-server/6.5.1
+GitCommit: f0ab8e5c7fc1091465097dc231cd5586f3eb7355
+Directory: enterprise/couchbase-server/6.6.0
diff --git a/_bashbrew-list b/_bashbrew-list
index 7ac5fb4..491deec 100644
--- a/_bashbrew-list
+++ b/_bashbrew-list
@@ -1,7 +1,6 @@
-couchbase:6.5.1
+couchbase:6.6.0
 couchbase:community
 couchbase:community-6.5.1
 couchbase:enterprise
-couchbase:enterprise-6.5.0
-couchbase:enterprise-6.5.1
+couchbase:enterprise-6.6.0
 couchbase:latest
diff --git a/couchbase_enterprise-6.5.0/Dockerfile b/couchbase_enterprise-6.5.0/Dockerfile
deleted file mode 100644
index 180a381..0000000
diff --git a/couchbase_enterprise-6.5.1/scripts/dummy.sh b/couchbase_enterprise-6.5.1/scripts/dummy.sh
deleted file mode 100755
index 0091b80..0000000
diff --git a/couchbase_enterprise-6.5.1/scripts/entrypoint.sh b/couchbase_enterprise-6.5.1/scripts/entrypoint.sh
deleted file mode 100755
index 25dea8d..0000000
diff --git a/couchbase_enterprise-6.5.1/scripts/run b/couchbase_enterprise-6.5.1/scripts/run
deleted file mode 100755
index a5535cf..0000000
diff --git a/couchbase_enterprise-6.5.1/Dockerfile b/couchbase_enterprise-6.6.0/Dockerfile
similarity index 78%
rename from couchbase_enterprise-6.5.1/Dockerfile
rename to couchbase_enterprise-6.6.0/Dockerfile
index 928d983..8fdd4a3 100644
--- a/couchbase_enterprise-6.5.1/Dockerfile
+++ b/couchbase_enterprise-6.6.0/Dockerfile
@@ -19,10 +19,18 @@ RUN apt-get update && \
     apt-get autoremove && apt-get clean && \
     rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
 
-ARG CB_VERSION=6.5.1
-ARG CB_RELEASE_URL=https://packages.couchbase.com/releases/6.5.1
-ARG CB_PACKAGE=couchbase-server-enterprise_6.5.1-ubuntu16.04_amd64.deb
-ARG CB_SHA256=80427193137e5cb5a4795b2675b1c450c1af8cf1a5c634d917f6c416f2047e66
+# http://smarden.org/runit/useinit.html#sysv - at some point the script
+# runsvdir-start was moved/renamed to this odd name, so we put it back
+# somewhere sensible. This appears to be necessary for Ubuntu 20 but
+# not Ubuntu 16.
+RUN if [ ! -x /usr/sbin/runsvdir-start ]; then \
+        cp -a /etc/runit/2 /usr/sbin/runsvdir-start; \
+    fi
+
+ARG CB_VERSION=6.6.0
+ARG CB_RELEASE_URL=https://packages.couchbase.com/releases/6.6.0
+ARG CB_PACKAGE=couchbase-server-enterprise_6.6.0-ubuntu16.04_amd64.deb
+ARG CB_SHA256=9f666b2e39c11b17a9cc74c00967d97efeab08e23b93e8bbdec582ce009c65c9
 
 ENV PATH=$PATH:/opt/couchbase/bin:/opt/couchbase/bin/tools:/opt/couchbase/bin/install
 
@@ -36,6 +44,9 @@ RUN export INSTALL_DONT_START_SERVER=1 && \
     echo "$CB_SHA256  $CB_PACKAGE" | sha256sum -c - && \
     dpkg -i ./$CB_PACKAGE && rm -f ./$CB_PACKAGE
 
+# Update VARIANT.txt to indicate we're running in our Docker image
+RUN sed -i -e '1 s/$/\/docker/' /opt/couchbase/VARIANT.txt
+
 # Add runit script for couchbase-server
 COPY scripts/run /etc/service/couchbase-server/run
 RUN chown -R couchbase:couchbase /etc/service
diff --git a/couchbase_enterprise-6.5.0/scripts/dummy.sh b/couchbase_enterprise-6.6.0/scripts/dummy.sh
similarity index 100%
rename from couchbase_enterprise-6.5.0/scripts/dummy.sh
rename to couchbase_enterprise-6.6.0/scripts/dummy.sh
diff --git a/couchbase_enterprise-6.5.0/scripts/entrypoint.sh b/couchbase_enterprise-6.6.0/scripts/entrypoint.sh
similarity index 100%
rename from couchbase_enterprise-6.5.0/scripts/entrypoint.sh
rename to couchbase_enterprise-6.6.0/scripts/entrypoint.sh
diff --git a/couchbase_enterprise-6.5.0/scripts/run b/couchbase_enterprise-6.6.0/scripts/run
similarity index 100%
rename from couchbase_enterprise-6.5.0/scripts/run
rename to couchbase_enterprise-6.6.0/scripts/run

@ceejatec
Copy link
Contributor Author

I'm not sure what this error in the "docker build" output means?

Failed to connect to bus: No such file or directory

This same Dockerfile built using Docker Hub automated builds; are "official builds" somehow different?

@tianon
Copy link
Member

tianon commented Aug 11, 2020

Hmm, that build failure is interesting -- let me try running the build test locally and see if it has the same issue.

This same Dockerfile built using Docker Hub automated builds; are "official builds" somehow different?

The answer to this is two-fold -- for testing PRs here, we just use GitHub Actions with docker build, but for the real official builds we do docker build on dedicated instances (of the appropriate native architecture, for multi-architecture builds). See https://github.com/docker-library/faq#how-are-images-built-especially-multiarch for more detail on that.

@tianon
Copy link
Member

tianon commented Aug 11, 2020

+# http://smarden.org/runit/useinit.html#sysv - at some point the script
+# runsvdir-start was moved/renamed to this odd name, so we put it back
+# somewhere sensible. This appears to be necessary for Ubuntu 20 but
+# not Ubuntu 16.
+RUN if [ ! -x /usr/sbin/runsvdir-start ]; then \
+        cp -a /etc/runit/2 /usr/sbin/runsvdir-start; \
+    fi

This seems odd -- what is runit being used for in this image?

@ceejatec
Copy link
Contributor Author

We use runit in part for similar reasons as some people use tini, for correct signal handling. We do also use runit's ability to run multiple startup scripts for some images which are derived from the main Couchbase Server image.

As the comment indicates, I discovered that the Ubuntu runit package changed between Ubuntu 16 and 20 (our Couchbase Server 7.0 image will be based on Ubuntu 20), which is why that new RUN directive is in there.

@ceejatec
Copy link
Contributor Author

Ok, that second test failure on couchbase:community definitely must be a change on your guys' end - that portion of the library file was unchanged in this PR, including the SHA, so it's the same data that built successfully here a couple months ago...

@yosifkit
Copy link
Member

Not sure why it fails on Github Actions; we only merged them on May 5 (#7937), so your PRs have never used them. The Github Action just does a standard docker build so you could easily set it up on your own repo to try and debug. My guess is extra security settings like seccomp or apparmor on Github Actions.

Anyway, it builds fine locally.
Build test of #8523; a6ef0c4; amd64 (couchbase):

$ bashbrew build couchbase:latest
Building bashbrew/cache:d9d49a4752223e3af5bb57aa4947021484a0629ef7f7f4941c7fd6f9b8060ec4 (couchbase:latest)
Tagging couchbase:latest
Tagging couchbase:enterprise
Tagging couchbase:6.6.0
Tagging couchbase:enterprise-6.6.0

$ test/run.sh couchbase:latest
testing couchbase:latest
	'utc' [1/4]...passed
	'cve-2014--shellshock' [2/4]...passed
	'no-hard-coded-passwords' [3/4]...passed
	'override-cmd' [4/4]...passed


$ bashbrew build couchbase:community
Using bashbrew/cache:57307948eaa1ff7efb969b7fc1fc308d15c7823dec8bfe8fa7549a8f43f55a37 (couchbase:community)
Tagging couchbase:community
Tagging couchbase:community-6.5.1

$ test/run.sh couchbase:community
testing couchbase:community
	'utc' [1/4]...passed
	'cve-2014--shellshock' [2/4]...passed
	'no-hard-coded-passwords' [3/4]...passed
	'override-cmd' [4/4]...passed

@yosifkit yosifkit merged commit 4127d86 into docker-library:master Aug 11, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants