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

Joshua s brown libcurl openssl #941

Closed
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
151 commits
Select commit Hold shift + click to select a range
9b624e1
First commits to upgrading protobuf"
Feb 5, 2024
0c80ddb
Remove commented out cmake lines
Feb 6, 2024
6e36637
Customize install function location
JoshuaSBrown Feb 7, 2024
8bb3b9f
Merge branch 'devel' into JoshuaSBrown-upgrade-protobuf
JoshuaSBrown Feb 12, 2024
55d53f2
Apply some small fixes
JoshuaSBrown Feb 12, 2024
2af0fb8
Fix some small issues
JoshuaSBrown Feb 12, 2024
fd24c44
Add first commits for including repo compose file
JoshuaSBrown Feb 19, 2024
1092a5e
Update protobuf branch
JoshuaSBrown Feb 22, 2024
3432bd6
Changes to fix
JoshuaSBrown Feb 22, 2024
41bdfb1
Fix merge conflict
JoshuaSBrown Feb 22, 2024
55a4f00
Address merge conflict
JoshuaSBrown Feb 22, 2024
5800deb
Fix missing version
JoshuaSBrown Feb 22, 2024
8ae2a08
Fix diff
JoshuaSBrown Feb 22, 2024
d09e08b
Modularized pulling in cmake dependencies
JoshuaSBrown Feb 27, 2024
9a43936
Pulled out cruft and modularized cmake main file
JoshuaSBrown Feb 27, 2024
19f5a56
Updated to using targets instead of variables
JoshuaSBrown Feb 27, 2024
217b45e
Updated proto common CMakeList.txt to using targets intead of variables
JoshuaSBrown Feb 27, 2024
660692c
Remove old messages
JoshuaSBrown Feb 27, 2024
fb07820
Remove old message from JSON.cmake
JoshuaSBrown Feb 27, 2024
ee5f8a3
Remove old message from ZeroMQ.cmake
JoshuaSBrown Feb 27, 2024
20b8ba5
Cleanup common/proto/common CMakefile remove comments
JoshuaSBrown Feb 27, 2024
56e2566
Replace ZeroMQ package config targets with regular targets
JoshuaSBrown Feb 27, 2024
55235b1
Remove reference to ABSL as static protocol library is used
JoshuaSBrown Feb 27, 2024
a1f0eb1
Cleanup CMake in core/database remove message
JoshuaSBrown Feb 27, 2024
ae45ecd
Replace variable with zeromq target
JoshuaSBrown Feb 27, 2024
9e27892
Cleanup comments in cmake files in python repo
JoshuaSBrown Feb 27, 2024
71083e8
Replace variables with zeromq targets
JoshuaSBrown Feb 27, 2024
827e26b
Remove libzmq3-dev from apt-package installs
JoshuaSBrown Feb 27, 2024
9bab1ba
Add zmqcpp version to version file
JoshuaSBrown Feb 27, 2024
67ea3c8
Use link static libsodium to zeromq
JoshuaSBrown Feb 27, 2024
1f56c76
Add sodium version output and lib path for json schema dep
JoshuaSBrown Feb 27, 2024
a712386
Include git repo as part of docker build so that we can clone externa…
JoshuaSBrown Feb 27, 2024
32c62fd
update docker files so that they use static libraries instead of shar…
JoshuaSBrown Feb 27, 2024
cda758e
Alter copy_dependency so that it can handle shared .a and .so libraries
JoshuaSBrown Feb 27, 2024
b4814e7
Adjust dependenc_install_function script so can be run with regular a…
JoshuaSBrown Feb 27, 2024
e9004fa
move sudo_command init to earlier
JoshuaSBrown Feb 27, 2024
96e14a5
Add return 0 to sudo_command
JoshuaSBrown Feb 27, 2024
2794b7f
Make correction to how copy_dependency library script variables are h…
JoshuaSBrown Feb 27, 2024
bf32e47
Attempt to fix docker PATH usage with cmake
JoshuaSBrown Feb 27, 2024
b410f0b
add libsodium to install_repo_dependencies
JoshuaSBrown Feb 27, 2024
5713213
Fix docker compose
JoshuaSBrown Feb 27, 2024
566adb6
added openssl and curl local dependencies
nedvedba Feb 27, 2024
5b5c32b
Update dependency install scripts to include openssl and libcurl
JoshuaSBrown Feb 29, 2024
2e0c55a
Refactored dependency install scripts to install to /external folder …
JoshuaSBrown Feb 29, 2024
40b7ea3
Address merge conflict
JoshuaSBrown Feb 29, 2024
8d76bf8
Address Merge conflicts
JoshuaSBrown Feb 29, 2024
78d00aa
Merge branch 'JoshuaSBrown-upgrade-protobuf' into JoshuaSBrown-libcur…
JoshuaSBrown Feb 29, 2024
bc14569
Address too many arguments provided to cd command
JoshuaSBrown Feb 29, 2024
2eddbde
Merge branch 'JoshuaSBrown-libcurl-openssl' of github.com:ORNL/DataFe…
JoshuaSBrown Feb 29, 2024
205edde
Remove comment
JoshuaSBrown Feb 29, 2024
d0011d1
Make arango install optional, also make default paths explicit
JoshuaSBrown Feb 29, 2024
d5b522d
tried implementing custom openssl in cmake build
nedvedba Feb 29, 2024
a99c431
Fix how CI is building, base images are not building correctly per br…
JoshuaSBrown Feb 29, 2024
b28e678
Add latest flag to base image
JoshuaSBrown Feb 29, 2024
7d9fa44
Fix build-arg
JoshuaSBrown Feb 29, 2024
85c3393
Adding latest tag
JoshuaSBrown Feb 29, 2024
4cdfb57
Fix registry line and image name
JoshuaSBrown Feb 29, 2024
55120ea
Merge pull request #939 from ORNL/JoshuaSBrown-libcurl-openssl
nedvedba Feb 29, 2024
7940ded
Put explicit paths to cmake
JoshuaSBrown Feb 29, 2024
2a0f055
Debug web install path
JoshuaSBrown Feb 29, 2024
6b88a05
Update rules
JoshuaSBrown Feb 29, 2024
d8189bb
Address permissions of folders
JoshuaSBrown Feb 29, 2024
41eb3fd
Fix web typo
JoshuaSBrown Feb 29, 2024
e6e2722
Fix typos
JoshuaSBrown Feb 29, 2024
9072c64
Update install path grab from config file
JoshuaSBrown Feb 29, 2024
0e6c4c4
Fix install paths
JoshuaSBrown Feb 29, 2024
9bffadb
Trigger CI if changes in main CMakeLists.txt file
JoshuaSBrown Feb 29, 2024
e6b89ba
Trigger ws build if base build succeeds
JoshuaSBrown Feb 29, 2024
afb7c9b
Run job if previous job exists
JoshuaSBrown Feb 29, 2024
ff0ca83
Trying to fix
JoshuaSBrown Feb 29, 2024
cb3dd0d
Fix inconsistencies in datafed dependencies install path
JoshuaSBrown Feb 29, 2024
2fc5f0a
Attempt to fix artifact trigger
JoshuaSBrown Feb 29, 2024
d26e298
Attempt to update rule
JoshuaSBrown Feb 29, 2024
e7fd91f
added zlib to custom built dependencies
nedvedba Feb 29, 2024
a1fff48
Added job rules to core repo gcs python_client containers
JoshuaSBrown Feb 29, 2024
ed75d2f
Merge branch 'JoshuaSBrown-libcurl-openssl' into BlakeNedved-upgrade-…
JoshuaSBrown Feb 29, 2024
2faf183
Merge pull request #940 from ORNL/BlakeNedved-upgrade-libcurl-openssl
JoshuaSBrown Feb 29, 2024
ce4e691
added missing cmake zlib file
nedvedba Mar 1, 2024
29daee9
fixed core build with custom dependencies
nedvedba Mar 1, 2024
72898f9
Standardize install scripts
JoshuaSBrown Mar 2, 2024
bcee8bd
Add missing zlib.cmake
JoshuaSBrown Mar 2, 2024
d3ab14c
Address merge conflicts
JoshuaSBrown Mar 2, 2024
3d197ff
Make file format consistent
JoshuaSBrown Mar 2, 2024
c606588
Update Zlib and ZeroMQ cmake files
JoshuaSBrown Mar 2, 2024
3aca799
Cleanup outputs
JoshuaSBrown Mar 2, 2024
a67e28f
add more files to gitignore
JoshuaSBrown Mar 4, 2024
6ebeb4b
Use DataFed specific variables and move BOOST find to cmake file
JoshuaSBrown Mar 4, 2024
aed8b45
Improve CURL.cmake robustness
JoshuaSBrown Mar 4, 2024
5687ae6
Put in branch for handling shared and static OpenSLL libraries
JoshuaSBrown Mar 4, 2024
cce0282
Add additional functionality for building and testing zeromq
JoshuaSBrown Mar 4, 2024
0a7e288
Add improved cmake code for finding zlib
JoshuaSBrown Mar 4, 2024
e5527ca
Add functionality for building common library for both static and sha…
JoshuaSBrown Mar 4, 2024
044fb4b
Add ability to build datafed-protobuf library as both static and shar…
JoshuaSBrown Mar 4, 2024
2736392
Add ability to build both common and shared zeromq as part of secure …
JoshuaSBrown Mar 4, 2024
b82d438
Add ability to build with shared and or static libraries to core server
JoshuaSBrown Mar 4, 2024
eb836ae
Added branch for building unit tests with static or shared library
JoshuaSBrown Mar 4, 2024
bdad930
Add ability to build authz with external shared or static libraries, …
JoshuaSBrown Mar 4, 2024
a83a7a7
Add ability to build repo server with shared or static libraries
JoshuaSBrown Mar 4, 2024
e32460b
Build static and shared libraries
JoshuaSBrown Mar 4, 2024
680518c
Add boost cmake file and curl_version.cpp source file"
JoshuaSBrown Mar 4, 2024
0adc19f
Update python client docker ci
JoshuaSBrown Mar 4, 2024
a91a686
Build static protobuf first, otherwise static build is ignored.
JoshuaSBrown Mar 4, 2024
19c96ff
Update compose to build all containers
JoshuaSBrown Mar 4, 2024
5034265
cpp-py-formatter
Mar 4, 2024
826d2f7
Add missing utils script
JoshuaSBrown Mar 4, 2024
1b3bfba
Merge branch 'JoshuaSBrown-libcurl-openssl' of github.com:ORNL/DataFe…
JoshuaSBrown Mar 4, 2024
ffe52c5
Debug docker file
JoshuaSBrown Mar 4, 2024
936e094
Fix zmq install, shared and static libraries should be built at the s…
JoshuaSBrown Mar 4, 2024
e9e8fdd
Compile in parallel for make
JoshuaSBrown Mar 4, 2024
fb661d6
Add generate_datafed.sh
JoshuaSBrown Mar 4, 2024
c40af7d
Remove old gcs base image
JoshuaSBrown Mar 4, 2024
80fe09e
Define docker variable
JoshuaSBrown Mar 4, 2024
ce4c58e
Don't use globus build script it is broken
JoshuaSBrown Mar 4, 2024
7c3cf57
Attempt to fix client
JoshuaSBrown Mar 4, 2024
40f1dc5
Attempt to fix ci file
JoshuaSBrown Mar 4, 2024
54fe88a
Remove comment
JoshuaSBrown Mar 4, 2024
bf9bb75
Use abs paths to cmake for python client
JoshuaSBrown Mar 4, 2024
d9ec06f
Add python client build dependency
JoshuaSBrown Mar 5, 2024
cdb3873
Remove debug message
JoshuaSBrown Mar 5, 2024
fc5abc7
Split long line
JoshuaSBrown Mar 5, 2024
7f2a3e6
Make cmake path explicit in foxx entrypoint file
JoshuaSBrown Mar 5, 2024
a189be1
Make paths explicit in python target in CMakeLists.txt"
JoshuaSBrown Mar 5, 2024
fa4c73d
Only install static library for json schema, due to conflicts, protec…
JoshuaSBrown Mar 5, 2024
3d0a24e
Make DOckerfile Arg variable consistent
JoshuaSBrown Mar 5, 2024
c20a904
Fix dependency install script variable usage
JoshuaSBrown Mar 5, 2024
e1e096d
Make path to dependency installed binaries explicit
JoshuaSBrown Mar 5, 2024
5ff2a42
Add instructions for running individual container
JoshuaSBrown Mar 5, 2024
bdbc538
Force static build
JoshuaSBrown Mar 5, 2024
e68f7e8
Fix ci job
JoshuaSBrown Mar 5, 2024
fdd0e0d
Added docker file
JoshuaSBrown Mar 5, 2024
9ed418e
Cleaning up compose build
JoshuaSBrown Mar 5, 2024
748aa5c
Allow first user to be admin
JoshuaSBrown Mar 5, 2024
b686635
Get authz Docker file building for compose
JoshuaSBrown Mar 6, 2024
4329ec3
Make curl dependencies explicit and disable uneeded features
JoshuaSBrown Mar 7, 2024
d0143b1
Add repo build images script to compose
JoshuaSBrown Mar 7, 2024
6f6206d
Fix order of dependency install
JoshuaSBrown Mar 7, 2024
201fae4
Add fixes to web container build
JoshuaSBrown Mar 7, 2024
27cc694
Fix docker web dependencies and package .json
JoshuaSBrown Mar 7, 2024
b3e6174
remove deprecated module from curl install
JoshuaSBrown Mar 7, 2024
b72fdef
Fix docker copy commands
JoshuaSBrown Mar 7, 2024
4960f03
Fix docker base image
JoshuaSBrown Mar 7, 2024
b882df3
Merge branch 'JoshuaSBrown-libcurl-openssl' of github.com:ORNL/DataFe…
JoshuaSBrown Mar 7, 2024
1aaade1
Remove reference to metalink
JoshuaSBrown Mar 7, 2024
390fc4a
Address codacy complaints
JoshuaSBrown Mar 7, 2024
60ae815
Attempting to fix path to ssl
JoshuaSBrown Mar 7, 2024
20a64a7
Remove zstd from install of curl
JoshuaSBrown Mar 7, 2024
b1479ea
Merge branch 'JoshuaSBrown-libcurl-openssl' of github.com:ORNL/DataFe…
JoshuaSBrown Mar 7, 2024
ee0d3af
Diable zstd
JoshuaSBrown Mar 7, 2024
dcad95e
Merge branch 'JoshuaSBrown-libcurl-openssl' of github.com:ORNL/DataFe…
JoshuaSBrown Mar 9, 2024
efd6c8f
Remove run command
JoshuaSBrown Mar 9, 2024
3cd86fb
Add globus Python script for creating project and confidential client
JoshuaSBrown Mar 11, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 14 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,7 +1,11 @@
/.idea/
build
cmake/sodium_version
cmake/curl_version
cmake/zlib_version
common/proto/common/Version.proto
compose/.env
compose/keys
config/datafed.sh
config/datafed-authz.cfg
config/datafed-core.cfg
Expand All @@ -13,6 +17,14 @@ core/server/Version.hpp
docs/.buildinfo
docs/.doctrees/
docs/.nojekyll
external/cppzmq/
external/json-schema-validator/
external/json/
external/libcurl/
external/libsodium/
external/libzmq/
external/openssl/
external/zlib/
python/datafed_pkg/datafed/VERSION.py
python/datafed_pkg/datafed.egg-info/
python/datafed_pkg/datafed/SDMS_Anon_pb2.py
Expand All @@ -30,13 +42,15 @@ scripts/globus/mapping.json
scripts/admin_datafed_backup.sh
scripts/admin_refresh_certs.sh
services/
tmp/
web/SDMS.proto
web/SDMS_Anon.proto
web/SDMS_Auth.proto
web/version.js
web/Version.proto
web/datafed-core-key.pub
web/node_modules/
web/package-lock.json
web/static/datafed-core-key.pub
*.swp
*.swo
128 changes: 82 additions & 46 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -127,10 +127,11 @@ build-ws-base:
- ci-datafed-core
- docker
script:
- BRANCH_LOWER=$(echo "$CI_COMMIT_REF_NAME" | tr '[:upper:]' '[:lower:]')
- docker system prune -f
- docker build -f web/docker/Dockerfile.web-base.ubuntu -t "${REGISTRY}/${IMAGE_TAG}" .
- docker build -f web/docker/Dockerfile.web-base.ubuntu -t "${REGISTRY}/${IMAGE_TAG}-${BRANCH_LOWER}:latest" .
- docker login "${REGISTRY}" -u "${HARBOR_USER}" -p "${HARBOR_DATAFED_GITLAB_CI_REGISTRY}"
- docker push "${REGISTRY}/${IMAGE_TAG}"
- docker push "${REGISTRY}/${IMAGE_TAG}-${BRANCH_LOWER}:latest"

build-core-base:
needs: ["clear-core-cache"]
Expand All @@ -142,10 +143,11 @@ build-core-base:
- ci-datafed-core
- docker
script:
- BRANCH_LOWER=$(echo "$CI_COMMIT_REF_NAME" | tr '[:upper:]' '[:lower:]')
- docker system prune -f
- docker build -f core/docker/Dockerfile.core-base.ubuntu -t "${REGISTRY}/${IMAGE_TAG}" .
- docker build -f core/docker/Dockerfile.core-base.ubuntu -t "${REGISTRY}/${IMAGE_TAG}-${BRANCH_LOWER}:latest" .
- docker login "${REGISTRY}" -u "${HARBOR_USER}" -p "${HARBOR_DATAFED_GITLAB_CI_REGISTRY}"
- docker push "${REGISTRY}/${IMAGE_TAG}"
- docker push "${REGISTRY}/${IMAGE_TAG}-${BRANCH_LOWER}:latest"

build-repo-base:
needs: ["clear-repo-cache"]
Expand All @@ -157,10 +159,11 @@ build-repo-base:
- ci-datafed-repo
- docker
script:
- BRANCH_LOWER=$(echo "$CI_COMMIT_REF_NAME" | tr '[:upper:]' '[:lower:]')
- docker system prune -f
- docker build -f repository/docker/Dockerfile.repo-base.ubuntu -t "${REGISTRY}/${IMAGE_TAG}" .
- docker build -f repository/docker/Dockerfile.repo-base.ubuntu -t "${REGISTRY}/${IMAGE_TAG}-${BRANCH_LOWER}:latest" .
- docker login "${REGISTRY}" -u "${HARBOR_USER}" -p "${HARBOR_DATAFED_GITLAB_CI_REGISTRY}"
- docker push "${REGISTRY}/${IMAGE_TAG}"
- docker push "${REGISTRY}/${IMAGE_TAG}-${BRANCH_LOWER}:latest"

build-python-client-base:
needs: ["clear-python-client-cache"]
Expand All @@ -169,13 +172,14 @@ build-python-client-base:
GIT_STRATEGY: clone
stage: build-deploy-base
tags:
- ci-datafed-repo
- docker
- ci-datafed-client
script:
- BRANCH_LOWER=$(echo "$CI_COMMIT_REF_NAME" | tr '[:upper:]' '[:lower:]')
- docker system prune -f
- docker build -f repository/docker/Dockerfile.repo-base.ubuntu -t "${REGISTRY}/${IMAGE_TAG}" .
- docker build -f python/docker/Dockerfile.python-client-base.ubuntu -t "${REGISTRY}/${IMAGE_TAG}-${BRANCH_LOWER}:latest" .
- docker login "${REGISTRY}" -u "${HARBOR_USER}" -p "${HARBOR_DATAFED_GITLAB_CI_REGISTRY}"
- docker push "${REGISTRY}/${IMAGE_TAG}"
- docker push "${REGISTRY}/${IMAGE_TAG}-${BRANCH_LOWER}:latest"

build-gcs-base:
needs: ["clear-repo-cache"]
Expand All @@ -192,18 +196,19 @@ build-gcs-base:
- ci-datafed-globus
- docker
script:
- BRANCH_LOWER=$(echo "$CI_COMMIT_REF_NAME" | tr '[:upper:]' '[:lower:]')
- docker system prune -f
- docker login "${REGISTRY}" -u "${HARBOR_USER}" -p "${HARBOR_DATAFED_GITLAB_CI_REGISTRY}"
- >
if ! docker pull "${GCS_TAG}:${GCS_SUBMODULE_VERSION}"; then
if ! docker pull "${GCS_TAG}:${GCS_SUBMODULE_VERSION}-${BRANCH_LOWER}:latest"; then
cd external/globus-connect-server-deploy/docker
git checkout "${GCS_SUBMODULE_VERSION}"
./docker-build-gcs.sh "${DISTRO}"
LATEST_IMAGE=$(docker images | grep ubuntu-focal | head -n1 | awk '{print $3}')
docker tag "$LATEST_IMAGE" "$GCS_TAG:${GCS_SUBMODULE_VERSION}"
docker build --progress plain --tag "$GCS_TAG:${GCS_SUBMODULE_VERSION}" - < "./docker-files/Dockerfile.${DISTRO}"
#LATEST_IMAGE=$(docker images | grep ${DISTRO} | head -n1 | awk '{print $3}')
#docker tag "$LATEST_IMAGE" "$GCS_TAG:${GCS_SUBMODULE_VERSION}"
docker push "$GCS_TAG:${GCS_SUBMODULE_VERSION}"
docker tag "$GCS_TAG:${GCS_SUBMODULE_VERSION}" "$GCS_TAG"
docker push "$GCS_TAG"
docker tag "$GCS_TAG:${GCS_SUBMODULE_VERSION}" "${GCS_TAG}-${BRANCH_LOWER}:latest"
docker push "${GCS_TAG}-${BRANCH_LOWER}:latest"
cd ../../../ # back too root of project
else
echo "Docker image already exists in the registry. Skipping build."
Expand All @@ -213,12 +218,15 @@ build-gcs-base:
# STAGE: provision client
################################################################################
provision-client:

needs: ["signal"]
variables:
GIT_STRATEGY: clone
stage: provision-client
tags:
- ci-datafed-client
before_script:
- export PATH=/opt/datafed/dependencies/bin:$PATH
script:
- ./scripts/generate_datafed.sh
- ./scripts/install_client_dependencies.sh
Expand All @@ -237,56 +245,61 @@ build-ws:
needs: ["build-ws-base"]
stage: build
variables:
IMAGE_TAG: "datafed/ws-"
IMAGE_TAG: "datafed/ws"
GIT_STRATEGY: clone
tags:
- ci-datafed-core
- docker
rules:
- changes:
- dockerfiles/*
- scripts/*
- web/*
- common/proto/*
- dockerfiles/**/*
- scripts/**/*
- web/**/*
- common/proto/**/*
- .gitlab-ci.yml
when: on_success
- exists:
- deploy-ws-base
- "build-ws-base"
when: on_success
script:
- BRANCH_LOWER=$(echo "$CI_COMMIT_REF_NAME" | tr '[:upper:]' '[:lower:]')
- echo "$BRANCH_LOWER"
- ./scripts/generate_datafed.sh
- docker login "${REGISTRY}" -u "${HARBOR_USER}" -p "${HARBOR_DATAFED_GITLAB_CI_REGISTRY}"
- docker build -f web/docker/Dockerfile.web.ubuntu -t "${REGISTRY}/${IMAGE_TAG}${BRANCH_LOWER}" .
- docker push "${REGISTRY}/${IMAGE_TAG}${BRANCH_LOWER}"
- docker build --build-arg BASE_WEB_IMAGE="${REGISTRY}/${IMAGE_TAG}-base-${BRANCH_LOWER}:latest" -f web/docker/Dockerfile.web.ubuntu -t "${REGISTRY}/${IMAGE_TAG}-${BRANCH_LOWER}" .
- docker push "${REGISTRY}/${IMAGE_TAG}-${BRANCH_LOWER}"

build-core:
needs: ["build-core-base"]
stage: build
variables:
IMAGE_TAG: "datafed/core-"
IMAGE_TAG: "datafed/core"
GIT_STRATEGY: clone
tags:
- ci-datafed-core
- docker
rules:
- changes:
- dockerfiles/*
- scripts/*
- common/*
- core/*
- dockerfiles/**/*
- scripts/**/*
- common/**/*
- core/**/*
- CMakeLists.txt
- cmake/**/*
- .gitlab-ci.yml
when: on_success
- exists:
- "build-core-base"
when: on_success
script:
- BRANCH_LOWER=$(echo "$CI_COMMIT_REF_NAME" | tr '[:upper:]' '[:lower:]')
- echo "$BRANCH_LOWER"
- env
- ./scripts/generate_datafed.sh
- cat ./config/datafed.sh
- docker login "${REGISTRY}" -u "${HARBOR_USER}" -p "${HARBOR_DATAFED_GITLAB_CI_REGISTRY}"
- docker build -f core/docker/Dockerfile.core.ubuntu -t "${REGISTRY}/${IMAGE_TAG}${BRANCH_LOWER}" .
- docker push "${REGISTRY}/${IMAGE_TAG}${BRANCH_LOWER}"
- docker build --build-arg BASE_CORE_IMAGE="${REGISTRY}/${IMAGE_TAG}-base-${BRANCH_LOWER}:latest" -f core/docker/Dockerfile.core.ubuntu -t "${REGISTRY}/${IMAGE_TAG}-${BRANCH_LOWER}" .
- docker push "${REGISTRY}/${IMAGE_TAG}-${BRANCH_LOWER}"

build-foxx:
stage: build
Expand Down Expand Up @@ -319,7 +332,7 @@ build-foxx:

build-repo:
variables:
IMAGE_TAG: "datafed/repo-"
IMAGE_TAG: "datafed/repo"
GIT_STRATEGY: clone
needs: ["build-repo-base"]
stage: build
Expand All @@ -328,58 +341,81 @@ build-repo:
- docker
rules:
- changes:
- dockerfiles/*
- scripts/*
- common/*
- repository/*
- dockerfiles/**/*
- scripts/**/*
- common/**/*
- repository/**/*
- CMakeLists.txt
- cmake/**/*
- .gitlab-ci.yml
when: on_success
- exists:
- "build-repo-base"
when: on_success
script:
- BRANCH_LOWER=$(echo "$CI_COMMIT_REF_NAME" | tr '[:upper:]' '[:lower:]')
- echo "$BRANCH_LOWER"
- ./scripts/generate_datafed.sh
- docker login "${REGISTRY}" -u "${HARBOR_USER}" -p "${HARBOR_DATAFED_GITLAB_CI_REGISTRY}"
- docker build -f repository/docker/Dockerfile.repo.ubuntu -t "${REGISTRY}/${IMAGE_TAG}${BRANCH_LOWER}" .
- docker push "${REGISTRY}/${IMAGE_TAG}${BRANCH_LOWER}"
- docker build --build-arg BASE_REPO_IMAGE="${REGISTRY}/${IMAGE_TAG}-base-${BRANCH_LOWER}:latest" -f repository/docker/Dockerfile.repo.ubuntu -t "${REGISTRY}/${IMAGE_TAG}-${BRANCH_LOWER}" .
- docker push "${REGISTRY}/${IMAGE_TAG}-${BRANCH_LOWER}"

build-gcs-authz:
stage: build
variables:
IMAGE_TAG: "datafed/gcs-authz-"
IMAGE_TAG: "datafed/gcs-authz"
GIT_STRATEGY: clone
tags:
- ci-datafed-globus
- docker
rules:
- changes:
- repository/gridftp/**/*
- scripts/**/*
- common/**/*
- .gitlab-ci.yml
- CMakeLists.txt
- cmake/**/*
when: always
- exists:
- "build-gcs-base"
when: on_success
script:
- BRANCH_LOWER=$(echo "$CI_COMMIT_REF_NAME" | tr '[:upper:]' '[:lower:]')
- echo "$BRANCH_LOWER"
- ./scripts/generate_datafed.sh
- docker login "${REGISTRY}" -u "${HARBOR_USER}" -p "${HARBOR_DATAFED_GITLAB_CI_REGISTRY}"
- docker build -f repository/docker/Dockerfile.gcs-authz.ubuntu -t "${REGISTRY}/${IMAGE_TAG}${BRANCH_LOWER}" .
- docker push "${REGISTRY}/${IMAGE_TAG}${BRANCH_LOWER}"
- docker build --build-arg BASE_GCS_IMAGE="${REGISTRY}/datafed/gcs-ubuntu-focal-${BRANCH_LOWER}:latest" -f repository/docker/Dockerfile.gcs-authz.ubuntu -t "${REGISTRY}/${IMAGE_TAG}-${BRANCH_LOWER}" .
- docker push "${REGISTRY}/${IMAGE_TAG}-${BRANCH_LOWER}"

build-python-client:
needs: ["build-python-client-base"]
variables:
IMAGE_TAG: "datafed/python-client-"
IMAGE_TAG: "datafed/python-client"
GIT_STRATEGY: clone
stage: build
tags:
- docker
- ci-datafed-client
rules:
- changes:
- python/*
- scripts/*
- common/*
- python/**/*
- scripts/**/*
- common/**/*
- .gitlab-ci.yml
- CMakeLists.txt
- cmake/**/*
when: always
- exists:
- "build-python-client-base"
when: on_success
script:
- BRANCH_LOWER=$(echo "$CI_COMMIT_REF_NAME" | tr '[:upper:]' '[:lower:]')
- echo "$BRANCH_LOWER"
- ./scripts/generate_datafed.sh
- docker login "${REGISTRY}" -u "${HARBOR_USER}" -p "${HARBOR_DATAFED_GITLAB_CI_REGISTRY}"
- docker build -f python/docker/Dockerfile.python-client.ubuntu -t "${REGISTRY}/${IMAGE_TAG}${BRANCH_LOWER}" .
- docker push "${REGISTRY}/${IMAGE_TAG}${BRANCH_LOWER}"
- docker build --build-arg BASE_PYTHON_CLIENT_IMAGE="${REGISTRY}/${IMAGE_TAG}-base-${BRANCH_LOWER}:latest" -f python/docker/Dockerfile.python-client.ubuntu -t "${REGISTRY}/${IMAGE_TAG}-${BRANCH_LOWER}" .
- docker push "${REGISTRY}/${IMAGE_TAG}-${BRANCH_LOWER}"

################################################################################
# STAGE: Integration
Expand Down
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
[submodule "external/globus-connect-server-deploy"]
path = external/globus-connect-server-deploy
url = https://github.com/globus/globus-connect-server-deploy.git
[submodule "external/protobuf"]
path = external/protobuf
url = https://github.com/protocolbuffers/protobuf.git
Loading
Loading