@@ -100,8 +100,8 @@ jobs:
100100 with :
101101 name : target-11
102102 path : target/*
103-
104- docker-build :
103+
104+ services- docker-build :
105105 needs :
106106 - build-8
107107 runs-on : ubuntu-22.04
@@ -112,11 +112,89 @@ jobs:
112112 uses : actions/download-artifact@v4
113113 with :
114114 name : target-8
115-
115+
116116 - name : Copy artifacts for docker build
117117 run : |
118- cp ranger-*.tar.gz dev-support/ranger-docker/dist
119- cp version dev-support/ranger-docker/dist
118+ mv ranger-*-admin.tar.gz dev-support/ranger-docker/dist
119+ mv ranger-*-usersync.tar.gz dev-support/ranger-docker/dist
120+ mv ranger-*-tagsync.tar.gz dev-support/ranger-docker/dist
121+ mv ranger-*-kms.tar.gz dev-support/ranger-docker/dist
122+ mv version dev-support/ranger-docker/dist
123+ rm -f ranger-*.tar.gz # clean up workspace
124+
125+ - name : Free up disk space
126+ run : docker system prune --all --force --volumes
127+
128+ - name : Download DB and Log4J connectors
129+ run : |
130+ cd dev-support/ranger-docker
131+ ./download-archives.sh none
132+
133+ - name : Build all ranger-service images
134+ run : |
135+ cd dev-support/ranger-docker
136+ export RANGER_DB_TYPE=postgres
137+ docker compose \
138+ -f docker-compose.ranger.yml \
139+ -f docker-compose.ranger-usersync.yml \
140+ -f docker-compose.ranger-tagsync.yml \
141+ -f docker-compose.ranger-kms.yml build
142+
143+ - name : Bring up ranger-service containers
144+ run : |
145+ cd dev-support/ranger-docker
146+ export RANGER_DB_TYPE=postgres
147+ docker compose \
148+ -f docker-compose.ranger.yml \
149+ -f docker-compose.ranger-usersync.yml \
150+ -f docker-compose.ranger-tagsync.yml \
151+ -f docker-compose.ranger-kms.yml up -d
152+
153+ - name : Check status of containers and remove them
154+ run : |
155+ sleep 60
156+ containers=(ranger ranger-zk ranger-solr ranger-postgres ranger-usersync ranger-tagsync ranger-kms);
157+ flag=true;
158+ for container in "${containers[@]}"; do
159+ if [[ $(docker inspect -f '{{.State.Running}}' $container 2>/dev/null) == "true" ]]; then
160+ echo "Container $container is running!";
161+ else
162+ flag=false;
163+ echo "Container $container is NOT running! Status: $(docker inspect -f '{{.State.Status}}' $container 2>/dev/null)";
164+ echo "docker logs $container:";
165+ docker logs $container
166+ fi
167+ done
168+
169+ if [[ $flag == true ]]; then
170+ echo "All required containers are up and running";
171+ docker stop $(docker ps -q) && docker rm $(docker ps -aq);
172+ else
173+ docker stop $(docker ps -q) && docker rm $(docker ps -aq);
174+ exit 1;
175+ fi
176+
177+ plugins-docker-build :
178+ needs :
179+ - build-8
180+ runs-on : ubuntu-24.04 # bumping os version for more disk space
181+ timeout-minutes : 60 # bumping timeout to allow containers to come up
182+ steps :
183+ - uses : actions/checkout@v4
184+ - name : Download build-8 artifacts
185+ uses : actions/download-artifact@v4
186+ with :
187+ name : target-8
188+
189+ - name : Copy artifacts for docker build
190+ run : |
191+ mv ranger-*-admin.tar.gz dev-support/ranger-docker/dist
192+ mv ranger-*-plugin.tar.gz dev-support/ranger-docker/dist
193+ mv version dev-support/ranger-docker/dist
194+ rm -f ranger-*.tar.gz # clean up workspace
195+
196+ - name : Free up disk space
197+ run : docker system prune --all --force --volumes
120198
121199 - name : Cache downloaded archives
122200 uses : actions/cache@v4
@@ -129,38 +207,28 @@ jobs:
129207 - name : Run download-archives.sh
130208 run : |
131209 cd dev-support/ranger-docker
132- rm -rf downloads/ozone-*
133210 ./download-archives.sh hadoop hive hbase kafka knox ozone
134-
135- - name : Clean up Docker space
136- run : docker system prune --all --force --volumes
137-
138- - name : Build all ranger-service images
211+
212+ - name : Build all ranger-plugin images
139213 run : |
140214 cd dev-support/ranger-docker
141215 export RANGER_DB_TYPE=postgres
142216 docker compose \
143217 -f docker-compose.ranger.yml \
144- -f docker-compose.ranger-usersync.yml \
145- -f docker-compose.ranger-tagsync.yml \
146- -f docker-compose.ranger-kms.yml \
147218 -f docker-compose.ranger-hadoop.yml \
148219 -f docker-compose.ranger-hbase.yml \
149220 -f docker-compose.ranger-kafka.yml \
150221 -f docker-compose.ranger-hive.yml \
151222 -f docker-compose.ranger-knox.yml \
152223 -f docker-compose.ranger-ozone.yml build
153224
154- - name : Bring up containers
225+ - name : Bring up ranger-plugin containers
155226 run : |
156227 cd dev-support/ranger-docker
157228 ./scripts/ozone/ozone-plugin-docker-setup.sh
158229 export RANGER_DB_TYPE=postgres
159230 docker compose \
160231 -f docker-compose.ranger.yml \
161- -f docker-compose.ranger-usersync.yml \
162- -f docker-compose.ranger-tagsync.yml \
163- -f docker-compose.ranger-kms.yml \
164232 -f docker-compose.ranger-hadoop.yml \
165233 -f docker-compose.ranger-hbase.yml \
166234 -f docker-compose.ranger-kafka.yml \
@@ -171,7 +239,7 @@ jobs:
171239 - name : Check status of containers and remove them
172240 run : |
173241 sleep 60
174- containers=(ranger ranger-zk ranger-solr ranger-postgres ranger-usersync ranger-tagsync ranger-kms ranger- hadoop ranger-hbase ranger-kafka ranger-hive ranger-knox ozone-om ozone-scm ozone-datanode);
242+ containers=(ranger ranger-zk ranger-solr ranger-postgres ranger-hadoop ranger-hbase ranger-kafka ranger-hive ranger-knox ozone-om ozone-scm ozone-datanode);
175243 flag=true;
176244 for container in "${containers[@]}"; do
177245 if [[ $(docker inspect -f '{{.State.Running}}' $container 2>/dev/null) == "true" ]]; then
@@ -183,7 +251,7 @@ jobs:
183251 docker logs $container
184252 fi
185253 done
186-
254+
187255 if [[ $flag == true ]]; then
188256 echo "All required containers are up and running";
189257 docker stop $(docker ps -q) && docker rm $(docker ps -aq);
0 commit comments