Skip to content

Commit c9258dd

Browse files
committed
Updated docs sync script
1 parent 8ca9eb0 commit c9258dd

File tree

1 file changed

+47
-37
lines changed

1 file changed

+47
-37
lines changed

scripts/dev/update_docs_snippets.sh

Lines changed: 47 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -11,26 +11,16 @@
1111
# MCK_DIR=~/mdb/mongodb-kubernetes DOCS_DIR=~/mdb/docs-k8s-operator ./update_docs_snippets.sh
1212

1313
set -eou pipefail
14+
set -x
1415

1516
MCK_DIR=${MCK_DIR:-"mongodb-kubernetes"}
16-
MCK_BRANCH=${MCK_BRANCH:-"release-x.x.x"}
17-
DOCS_DIR=${DOCS_DIR:-"docs-mck"}
18-
DOCS_BRANCH=${DOCS_BRANCH:-"master"}
17+
MCK_BRANCH=${MCK_BRANCH:-"master"}
18+
DOCS_DIR=${DOCS_DIR:-"docs-mongodb-internal"}
19+
DOCS_BRANCH=${DOCS_BRANCH:-"main"}
20+
DOCS_VERSION=${DOCS_VERSION:-"upcoming"}
21+
DOCS_INCLUDE_CODE_EXAMPLES_DIR="${DOCS_DIR}/content/kubernetes/${DOCS_VERSION}/source/includes/code-examples"
1922

2023
function prepare_repositories() {
21-
pushd "${MCK_DIR}"
22-
git fetch
23-
git checkout "${MCK_BRANCH}"
24-
25-
if [[ -n "$(git status --porcelain)" ]]; then
26-
echo "${MCK_DIR} has modified files, stashing..."
27-
git stash
28-
fi
29-
30-
git reset --hard "origin/${MCK_BRANCH}"
31-
32-
popd
33-
3424
pushd "${DOCS_DIR}"
3525
git fetch
3626
if [[ -n "$(git status --porcelain)" ]]; then
@@ -41,10 +31,31 @@ function prepare_repositories() {
4131
git checkout "${DOCS_BRANCH}"
4232
git reset --hard "origin/${DOCS_BRANCH}"
4333

44-
git checkout -b "MCK-snippets-update-$(date "+%Y%m%d%H%M%S")"
34+
git branch "MCK-snippets-update-${version_id}" || true
35+
git checkout "MCK-snippets-update-${version_id}"
36+
4537
popd
4638
}
4739

40+
function download_snippets_outputs() {
41+
dir=$1
42+
evg_version_id=$2
43+
echo "Downloading snippets outputs from s3 to ${dir}"
44+
aws s3 sync 's3://operator-e2e-artifacts/snippets_outputs/' "${dir}/" --exclude '*' --include "${evg_version_id}*"
45+
mkdir -p "${dir}/${evg_version_id}"
46+
cd "${dir}/${evg_version_id}"
47+
for f in *.tgz; do
48+
tar -xvf "${f}"
49+
done
50+
51+
outputs_dir="scripts/code_snippets/tests/outputs"
52+
if [[ ! -d "${outputs_dir}" ]]; then
53+
echo "No snippets were downloaded"
54+
ls -al
55+
return 1
56+
fi
57+
}
58+
4859
function copy_files() {
4960
local src_dir="$1"
5061
local dst_dir="$2"
@@ -65,7 +76,7 @@ function prepare_docs_pr() {
6576
return 1
6677
fi
6778

68-
git add "source/"
79+
git add "${DOCS_INCLUDE_CODE_EXAMPLES_DIR}"
6980
git commit -m "Update sample files from MCK"
7081
git push
7182
popd
@@ -74,25 +85,24 @@ function prepare_docs_pr() {
7485
pushd ../
7586
prepare_repositories
7687

77-
REF_ARCH_SRC_DIR="${MCK_DIR}/public/architectures"
78-
REF_ARCH_DST_DIR="${DOCS_DIR}/source/includes/code-examples/reference-architectures"
79-
80-
copy_files "${REF_ARCH_SRC_DIR}/ops-manager-multi-cluster" "${REF_ARCH_DST_DIR}/ops-manager-multi-cluster"
81-
copy_files "${REF_ARCH_SRC_DIR}/ops-manager-mc-no-mesh" "${REF_ARCH_DST_DIR}/ops-manager-mc-no-mesh"
82-
copy_files "${REF_ARCH_SRC_DIR}/mongodb-sharded-multi-cluster" "${REF_ARCH_DST_DIR}/mongodb-sharded-multi-cluster"
83-
copy_files "${REF_ARCH_SRC_DIR}/mongodb-sharded-mc-no-mesh" "${REF_ARCH_DST_DIR}/mongodb-sharded-mc-no-mesh"
84-
copy_files "${REF_ARCH_SRC_DIR}/mongodb-replicaset-multi-cluster" "${REF_ARCH_DST_DIR}/mongodb-replicaset-multi-cluster"
85-
copy_files "${REF_ARCH_SRC_DIR}/mongodb-replicaset-mc-no-mesh" "${REF_ARCH_DST_DIR}/mongodb-replicaset-mc-no-mesh"
86-
copy_files "${REF_ARCH_SRC_DIR}/setup-multi-cluster/verify-connectivity" "${REF_ARCH_DST_DIR}/setup-multi-cluster/verify-connectivity"
87-
copy_files "${REF_ARCH_SRC_DIR}/setup-multi-cluster/setup-gke" "${REF_ARCH_DST_DIR}/setup-multi-cluster/setup-gke"
88-
copy_files "${REF_ARCH_SRC_DIR}/setup-multi-cluster/setup-istio" "${REF_ARCH_DST_DIR}/setup-multi-cluster/setup-istio"
89-
copy_files "${REF_ARCH_SRC_DIR}/setup-multi-cluster/setup-operator" "${REF_ARCH_DST_DIR}/setup-multi-cluster/setup-operator"
90-
copy_files "${REF_ARCH_SRC_DIR}/setup-multi-cluster/setup-cert-manager" "${REF_ARCH_DST_DIR}/setup-multi-cluster/setup-cert-manager"
91-
copy_files "${REF_ARCH_SRC_DIR}/setup-multi-cluster/setup-externaldns" "${REF_ARCH_DST_DIR}/setup-multi-cluster/setup-externaldns"
92-
93-
DOCS_SNIPPETS_SRC_DIR="${MCK_DIR}/docs"
94-
DOCS_SNIPPEES_DST_DIR="${DOCS_DIR}/source/includes/code-examples"
95-
copy_files "${DOCS_SNIPPETS_SRC_DIR}/community-search/quick-start" "${DOCS_SNIPPEES_DST_DIR}/community-search/quick-start"
88+
tmp_dir=$(mktemp -d)
89+
download_snippets_outputs "${tmp_dir}" "${version_id}"
90+
outputs_dir="${tmp_dir}/${version_id}/scripts/code_snippets/tests/outputs"
91+
92+
for test_dir in ${outputs_dir}/test_*; do
93+
echo "Replacing outputs for test: ${test_dir}"
94+
rm -rf "${DOCS_INCLUDE_CODE_EXAMPLES_DIR}/outputs/$(basename "${test_dir}")"
95+
cp -r "${test_dir}" "${DOCS_INCLUDE_CODE_EXAMPLES_DIR}/outputs/$(basename "${test_dir}")"
96+
done
97+
98+
echo "${outputs_dir}"
99+
tree "${outputs_dir}"
100+
101+
rm -rf "${DOCS_INCLUDE_CODE_EXAMPLES_DIR}/reference-architectures"
102+
cp -r "${MCK_DIR}/public/architectures" "${DOCS_INCLUDE_CODE_EXAMPLES_DIR}/reference-architectures"
103+
104+
rm -rf "${DOCS_INCLUDE_CODE_EXAMPLES_DIR}/search"
105+
cp -r "${MCK_DIR}/docs/search" "${DOCS_INCLUDE_CODE_EXAMPLES_DIR}/search"
96106

97107
prepare_docs_pr
98108
popd

0 commit comments

Comments
 (0)