|
| 1 | +INSERT INTO plugin_metadata (id,name,description,type,icon,deleted,created_on,created_by,updated_on,updated_by) |
| 2 | +VALUES (nextval('id_seq_plugin_metadata'),'DockerSlim v1.0.0','This plugin is used to Slim the docker images (Currently this plugin can be used only for docker images not for docker buildx images).','PRESET','https://raw.githubusercontent.com/devtron-labs/devtron/main/assets/dockerslim-plugin-icon.png',false,'now()',1,'now()',1); |
| 3 | + |
| 4 | +INSERT INTO "plugin_tag_relation" ("id", "tag_id", "plugin_id", "created_on", "created_by", "updated_on", "updated_by") |
| 5 | +VALUES (nextval('id_seq_plugin_tag_relation'), (SELECT id FROM plugin_tag WHERE name='DevSecOps'), (SELECT id FROM plugin_metadata WHERE name='DockerSlim v1.0.0'),'now()', 1, 'now()', 1); |
| 6 | + |
| 7 | +INSERT INTO plugin_stage_mapping (id,plugin_id,stage_type,created_on,created_by,updated_on,updated_by) |
| 8 | +VALUES (nextval('id_seq_plugin_stage_mapping'),(SELECT id from plugin_metadata where name='DockerSlim v1.0.0'), 0,'now()',1,'now()',1); |
| 9 | + |
| 10 | +INSERT INTO "plugin_pipeline_script" ("id", "script","type","deleted","created_on", "created_by", "updated_on", "updated_by") |
| 11 | +VALUES ( |
| 12 | + nextval('id_seq_plugin_pipeline_script'), |
| 13 | + $$#!/bin/sh |
| 14 | +httpProbe=$(echo "$HTTPProbe" | tr "[:upper:]" "[:lower:]") |
| 15 | +includeFilePath=$IncludePathFile |
| 16 | + |
| 17 | +export tag=$(echo $CI_CD_EVENT | jq --raw-output .commonWorkflowRequest.dockerImageTag) |
| 18 | +export repo=$(echo $CI_CD_EVENT | jq --raw-output .commonWorkflowRequest.dockerRepository) |
| 19 | +export registry=$(echo $CI_CD_EVENT | jq --raw-output .commonWorkflowRequest.dockerRegistryURL) |
| 20 | + |
| 21 | +cd /devtroncd |
| 22 | + |
| 23 | +docker pull dslim/slim |
| 24 | + |
| 25 | +if [ "$httpProbe" == "true" ]; then |
| 26 | + if [ -n "$includeFilePath" ]; then |
| 27 | + docker run -i --rm -v /var/run/docker.sock:/var/run/docker.sock -v $PWD:$PWD dslim/slim build --http-probe=true --target $repo:$tag --tag $repo:$tag --continue-after=2 --include-path-file $includeFilePath |
| 28 | + else |
| 29 | + docker run -i --rm -v /var/run/docker.sock:/var/run/docker.sock -v $PWD:$PWD dslim/slim build --http-probe=true --target $repo:$tag --tag $repo:$tag --continue-after=2 |
| 30 | + fi |
| 31 | +elif [ -n "$includeFilePath" ]; then |
| 32 | + docker run -i --rm -v /var/run/docker.sock:/var/run/docker.sock -v $PWD:$PWD dslim/slim build --http-probe=false --target $repo:$tag --tag $repo:$tag --continue-after=2 --include-path-file $includeFilePath |
| 33 | +else |
| 34 | + docker run -i --rm -v /var/run/docker.sock:/var/run/docker.sock -v $PWD:$PWD dslim/slim build --http-probe=false --target $repo:$tag --tag $repo:$tag --continue-after=2 |
| 35 | +fi |
| 36 | + |
| 37 | +docker push $registry/$repo:$tag |
| 38 | + |
| 39 | +# Check the exit code of the last command |
| 40 | +if [ $? -eq 0 ]; then |
| 41 | + echo "-----------***** Success: Docker-slim images built successfully *****-----------" |
| 42 | +else |
| 43 | + echo "-----------***** Error: Docker-slim build failed, we are pushing original image to the container registry *****-----------" |
| 44 | +fi$$, |
| 45 | + 'SHELL', |
| 46 | + 'f', |
| 47 | + 'now()', |
| 48 | + 1, |
| 49 | + 'now()', |
| 50 | + 1 |
| 51 | +); |
| 52 | + |
| 53 | +INSERT INTO "plugin_step" ("id", "plugin_id","name","description","index","step_type","script_id","deleted", "created_on", "created_by", "updated_on", "updated_by") |
| 54 | +VALUES (nextval('id_seq_plugin_step'), (SELECT id FROM plugin_metadata WHERE name='DockerSlim v1.0.0'),'Step 1','Step 1 - DockerSlim','1','INLINE',(SELECT last_value FROM id_seq_plugin_pipeline_script),'f','now()', 1, 'now()', 1); |
| 55 | + |
| 56 | +INSERT INTO plugin_step_variable (id,plugin_step_id,name,format,description,is_exposed,allow_empty_value,default_value,value,variable_type,value_type,previous_step_index,variable_step_index,variable_step_index_in_plugin,reference_variable_name,deleted,created_on,created_by,updated_on,updated_by) |
| 57 | +VALUES (nextval('id_seq_plugin_step_variable'),(SELECT ps.id FROM plugin_metadata p inner JOIN plugin_step ps on ps.plugin_id=p.id WHERE p.name='DockerSlim v1.0.0' and ps."index"=1 and ps.deleted=false),'HTTPProbe','BOOL','Is port expose or not in Dockerfile','t','t',null,null,'INPUT','NEW',null,1,null,null,'f','now()',1,'now()',1), |
| 58 | +(nextval('id_seq_plugin_step_variable'),(SELECT ps.id FROM plugin_metadata p inner JOIN plugin_step ps on ps.plugin_id=p.id WHERE p.name='DockerSlim v1.0.0' and ps."index"=1 and ps.deleted=false),'IncludePathFile','STRING','File path contains including path for dockerslim build flag --include-path-file','t','t',null,null,'INPUT','NEW',null,1,null,null,'f','now()',1,'now()',1); |
0 commit comments