26 changed files with 6321 additions and 120 deletions
@ -0,0 +1,48 @@ |
|||||||
|
#!/bin/bash |
||||||
|
|
||||||
|
############################## |
||||||
|
# Builds a specified service |
||||||
|
# Arguments: |
||||||
|
# 1: Project to build |
||||||
|
# 2: Project path |
||||||
|
############################## |
||||||
|
build() { |
||||||
|
local project=$1 |
||||||
|
local project_dir=$2 |
||||||
|
|
||||||
|
echo "Building $project" |
||||||
|
echo "Build Path: $project_dir" |
||||||
|
echo "==================" |
||||||
|
|
||||||
|
chmod u+x "$project_dir/build.sh" |
||||||
|
"$project_dir/build.sh" |
||||||
|
} |
||||||
|
|
||||||
|
# Get Project |
||||||
|
PROJECT=$1; shift |
||||||
|
|
||||||
|
case "$PROJECT" in |
||||||
|
"api" | "Api") build Api $PWD/src/Api ;; |
||||||
|
"admin" | "Admin") build Admin $PWD/src/Admin ;; |
||||||
|
"identity" | "Identity") build Identity $PWD/src/Identity ;; |
||||||
|
"events" | "Events") build Events $PWD/src/Events ;; |
||||||
|
"billing" | "Billing") build Billing $PWD/src/Billing ;; |
||||||
|
"sso" | "Sso") build Sso $PWD/bitwarden_license/src/Sso ;; |
||||||
|
"server" | "Server") build Server $PWD/util/Server ;; |
||||||
|
"icons" | "Icons") build Icons $PWD/src/Icons ;; |
||||||
|
"notifications" | "Notifications") build Notifications $PWD/src/Notifications ;; |
||||||
|
"setup" | "Setup") build Setup $PWD/util/Setup ;; |
||||||
|
"eventsprocessor" | "EventsProcessor") build EventsProcessor $PWD/src/EventsProcessor ;; |
||||||
|
"") |
||||||
|
build Api $PWD/src/Api |
||||||
|
build Admin $PWD/src/Admin |
||||||
|
build Identity $PWD/src/Identity |
||||||
|
build Events $PWD/src/Events |
||||||
|
build Billing $PWD/src/Billing |
||||||
|
build Sso $PWD/bitwarden_license/src/Sso |
||||||
|
build Server $PWD/util/Server |
||||||
|
build Icons $PWD/src/Icons |
||||||
|
build Notifications $PWD/src/Notifications |
||||||
|
build EventsProcessor $PWD/src/EventsProcessor |
||||||
|
;; |
||||||
|
esac |
||||||
@ -0,0 +1,93 @@ |
|||||||
|
#!/bin/bash |
||||||
|
|
||||||
|
############################## |
||||||
|
# Builds the docker image from a pre-built build directory |
||||||
|
# Arguments: |
||||||
|
# 1: Project Name |
||||||
|
# 2: Project Directory |
||||||
|
# 3: Docker Tag |
||||||
|
# 4: Docker push |
||||||
|
# Outputs: |
||||||
|
# Output to STDOUT or STDERR. |
||||||
|
# Returns: |
||||||
|
# Returned values other than the default exit status of the last command run. |
||||||
|
############################## |
||||||
|
docker_build() { |
||||||
|
local project_name=$1 |
||||||
|
local project_dir=$2 |
||||||
|
local docker_tag=$3 |
||||||
|
local docker_push=$4 |
||||||
|
|
||||||
|
local project_name_lower=$(echo "$project_name" | awk '{print tolower($0)}') |
||||||
|
|
||||||
|
echo "Building docker image: bitwarden/$project_name_lower:$docker_tag" |
||||||
|
echo "==============================" |
||||||
|
if [ "$project_name_lower" == "k8s-proxy" ]; then |
||||||
|
docker build -f $project_dir/Dockerfile-k8s -t bitwarden/$project_name_lower:$docker_tag $project_dir |
||||||
|
fi |
||||||
|
|
||||||
|
docker build -t bitwarden/$project_name_lower:$docker_tag $project_dir |
||||||
|
|
||||||
|
if [ "$docker_push" == "1" ]; then |
||||||
|
docker push bitwarden/$project_name_lower:$docker_tag $project_dir |
||||||
|
fi |
||||||
|
} |
||||||
|
|
||||||
|
# Get Project |
||||||
|
PROJECT=$1; shift |
||||||
|
|
||||||
|
# Get Params |
||||||
|
TAG="latest" |
||||||
|
PUSH=0 |
||||||
|
|
||||||
|
while [ ! $# -eq 0 ]; do |
||||||
|
case "$1" in |
||||||
|
-t | --tag) |
||||||
|
if [[ $2 ]]; then |
||||||
|
TAG="$2" |
||||||
|
shift |
||||||
|
else |
||||||
|
exp "--tag requires a value" |
||||||
|
fi |
||||||
|
;; |
||||||
|
--push) PUSH=1 ;; |
||||||
|
-h | --help ) usage && exit ;; |
||||||
|
*) usage && exit ;; |
||||||
|
esac |
||||||
|
shift |
||||||
|
done |
||||||
|
|
||||||
|
|
||||||
|
case "$PROJECT" in |
||||||
|
"api" | "Api") docker_build Api $PWD/src/Api $TAG $PUSH ;; |
||||||
|
"admin" | "Admin") docker_build Admin $PWD/src/Admin $TAG $PUSH ;; |
||||||
|
"identity" | "Identity") docker_build Identity $PWD/src/Identity $TAG $PUSH ;; |
||||||
|
"events" | "Events") docker_build Events $PWD/src/Events $TAG $PUSH ;; |
||||||
|
#"billing" | "Billing") docker_build Billing $PWD/src/Billing $TAG $PUSH ;; |
||||||
|
"sso" | "Sso") docker_build Sso $PWD/bitwarden_license/src/Sso $TAG $PUSH ;; |
||||||
|
"server" | "Server") docker_build Server $PWD/util/Server $TAG $PUSH ;; |
||||||
|
"nginx" | "Nginx") docker_build Nginx $PWD/util/Nginx $TAG $PUSH ;; |
||||||
|
"k8s-proxy" | "K8s-Proxy") docker_build K8s-Proxy $PWD/util/Nginx $TAG $PUSH ;; |
||||||
|
"attachments" | "Attachments") docker_build Attachemnts $PWD/util/Attachments $TAG $PUSH ;; |
||||||
|
"icons" | "Icons") docker_build Icons $PWD/src/Icons $TAG $PUSH ;; |
||||||
|
"notifications" | "Notifications") docker_build Notifications $PWD/src/Notifications $TAG $PUSH ;; |
||||||
|
"mssql" | "MsSql" | "Mssql") docker_build MsSql $PWD/util/MsSql $TAG $PUSH ;; |
||||||
|
"seteup" | "Setup") docker_build Setup $PWD/util/Setup $TAG $PUSH |
||||||
|
"eventsprocessor" | "EventsProcessor") docker_build EventsProcessor $PWD/src/EventsProcessor $TAG $PUSH |
||||||
|
"") |
||||||
|
docker_build Api $PWD/src/Api $TAG $PUSH |
||||||
|
docker_build Admin $PWD/src/Admin $TAG $PUSH |
||||||
|
docker_build Identity $PWD/src/Identity $TAG $PUSH |
||||||
|
docker_build Events $PWD/src/Events $TAG $PUSH |
||||||
|
#docker_build Billing $PWD/src/Billing $TAG $PUSH |
||||||
|
docker_build Sso $PWD/bitwarden_license/src/Sso $TAG $PUSH |
||||||
|
docker_build Server $PWD/util/Server $TAG $PUSH |
||||||
|
docker_build Nginx $PWD/util/Nginx $TAG $PUSH |
||||||
|
docker_build Attachemnts $PWD/util/Attachments $TAG $PUSH |
||||||
|
docker_build Icons $PWD/src/Icons $TAG $PUSH |
||||||
|
docker_build Notifications $PWD/src/Notifications $TAG $PUSH |
||||||
|
docker_build MsSql $PWD/util/MsSql $TAG $PUSH$TAG $PUSH |
||||||
|
docker_build Setup $PWD/util/Setup $TAG $PUSH |
||||||
|
docker_build EventsProcessor $PWD/src/EventsProcessor $TAG $PUSH |
||||||
|
;; |
||||||
|
esac |
||||||
@ -0,0 +1,42 @@ |
|||||||
|
#!/bin/bash |
||||||
|
|
||||||
|
############################## |
||||||
|
# Builds the docker image from a pre-built build directory |
||||||
|
# Arguments: |
||||||
|
# 1: Project Name |
||||||
|
# 2: Project Directory |
||||||
|
# 3: Docker Tag |
||||||
|
# 4: Docker push |
||||||
|
############################## |
||||||
|
deploy_app_service() { |
||||||
|
local project_name=$1 |
||||||
|
local project_dir=$2 |
||||||
|
|
||||||
|
local project_name_lower=$(echo "$project_name" | awk '{print tolower($0)}') |
||||||
|
local webapp_name=$(az keyvault secret show --vault-name bitwarden-qa-kv --name appservices-$project_name_lower-webapp-name --query value --output tsv) |
||||||
|
|
||||||
|
cd $project_dir/obj/build-output/publish |
||||||
|
zip -r $project_name.zip . |
||||||
|
mv $project_name.zip ../../../ |
||||||
|
#az webapp deploy --resource-group bw-qa-env --name $webapp_name \ |
||||||
|
# --src-path $project_name.zip --verbose --type zip --restart true --subscription "Bitwarden Test" |
||||||
|
} |
||||||
|
|
||||||
|
PROJECT=$1; shift |
||||||
|
|
||||||
|
case "$PROJECT" in |
||||||
|
"api" | "Api") deploy_app_service Api $PWD/src/Api ;; |
||||||
|
"admin" | "Admin") deploy_app_service Admin $PWD/src/Admin ;; |
||||||
|
"identity" | "Identity") deploy_app_service Identity $PWD/src/Identity ;; |
||||||
|
"events" | "Events") deploy_app_service Events $PWD/src/Events ;; |
||||||
|
"billing" | "Billing") deploy_app_service Billing $PWD/src/Billing ;; |
||||||
|
"sso" | "Sso") deploy_app_service Sso $PWD/bitwarden_license/src/Sso ;; |
||||||
|
"") |
||||||
|
deploy_app_service Api $PWD/src/Api |
||||||
|
deploy_app_service Admin $PWD/src/Admin |
||||||
|
deploy_app_service Identity $PWD/src/Identity |
||||||
|
deploy_app_service Events $PWD/src/Events |
||||||
|
deploy_app_service Billing $PWD/src/Billing |
||||||
|
deploy_app_service Sso $PWD/bitwarden_license/src/Sso |
||||||
|
;; |
||||||
|
esac |
||||||
File diff suppressed because it is too large
Load Diff
@ -1,10 +0,0 @@ |
|||||||
#!/usr/bin/env bash |
|
||||||
set -e |
|
||||||
|
|
||||||
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" |
|
||||||
|
|
||||||
echo -e "\n## Building Attachments" |
|
||||||
|
|
||||||
echo -e "\nBuilding docker image" |
|
||||||
docker --version |
|
||||||
docker build -t bitwarden/attachments "$DIR/." |
|
||||||
@ -1,10 +0,0 @@ |
|||||||
#!/usr/bin/env bash |
|
||||||
set -e |
|
||||||
|
|
||||||
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" |
|
||||||
|
|
||||||
echo -e "\n## Building MsSql" |
|
||||||
|
|
||||||
echo -e "\nBuilding docker image" |
|
||||||
docker --version |
|
||||||
docker build -t bitwarden/mssql "$DIR/." |
|
||||||
@ -1,16 +0,0 @@ |
|||||||
#!/usr/bin/env bash |
|
||||||
set -e |
|
||||||
|
|
||||||
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" |
|
||||||
|
|
||||||
echo -e "\n## Building Nginx" |
|
||||||
|
|
||||||
echo -e "\nBuilding docker image" |
|
||||||
docker --version |
|
||||||
docker build -t bitwarden/nginx "$DIR/." |
|
||||||
|
|
||||||
|
|
||||||
echo -e "\n## Building k8s-proxy" |
|
||||||
|
|
||||||
echo -e "\nBuilding docker image" |
|
||||||
docker build -f $DIR/Dockerfile-k8s -t bitwarden/k8s-proxy "$DIR/." |
|
||||||
Loading…
Reference in new issue