~starkingdoms/starkingdoms

8446c23b3976772a913aebe12ff3f4017865173e — c0repwn3r 2 years ago 4b312c8
other jenkinsfiles
4 files changed, 90 insertions(+), 9 deletions(-)

M Jenkinsfile
A beta.Jenkinsfile
M spacetime
A stable.Jenkinsfile
M Jenkinsfile => Jenkinsfile +1 -2
@@ 20,8 20,7 @@ pipeline {
        stage('Docker') {
            steps {
                sh 'docker login registry.gitlab.com -u ${DOCKER_LOGIN_CREDS_USR} -p ${DOCKER_LOGIN_CREDS_PSW}'
                sh 'STK_CHANNEL=bleeding STK_BUILD_NUM=${BUILD_NUMBER} ./spacetime build_docker_api'
                sh 'STK_CHANNEL=bleeding STK_BUILD_NUM=${BUILD_NUMBER} ./spacetime build_docker_server'
                sh 'STK_CHANNEL=bleeding STK_BUILD_NUM=${BUILD_NUMBER} ./spacetime build_docker'
            }
        }
    }

A beta.Jenkinsfile => beta.Jenkinsfile +27 -0
@@ 0,0 1,27 @@
pipeline {
    agent any

    environment {
        DOCKER_LOGIN_CREDS = credentials('gitlab-docker-key')
        PATH = "/var/lib/jenkins/.cargo/bin:$PATH"
    }

    stages {
        stage('Build') {
            steps {
                sh 'cargo build --locked'
            }
        }
        stage('Clippy') {
            steps {
                sh 'cargo clippy --locked'
            }
        }
        stage('Docker') {
            steps {
                sh 'docker login registry.gitlab.com -u ${DOCKER_LOGIN_CREDS_USR} -p ${DOCKER_LOGIN_CREDS_PSW}'
                sh 'STK_CHANNEL=beta STK_BUILD_NUM=${BUILD_NUMBER} ./spacetime build_docker_beta'
            }
        }
    }
}
\ No newline at end of file

M spacetime => spacetime +35 -7
@@ 172,7 172,13 @@ build_docker() {
  docker buildx build -f "$SCRIPT_DIR/$1".Dockerfile -t registry.gitlab.com/starkingdoms.tk/starkingdoms.tk:"$1"-"$2" "$SCRIPT_DIR"
  docker push registry.gitlab.com/starkingdoms.tk/starkingdoms.tk:"$1"-$(git rev-parse --short HEAD)
  docker push registry.gitlab.com/starkingdoms.tk/starkingdoms.tk:"$1"-"$2"
}

swap_out_server_for() {
  echo "[*] Swapping out API server"
  sed -i'orig' "s/let api_server = \"http:\\/\\/localhost:8080\";/let api_server = \"https:\\/\\/api.$1.$2\";/" "$SCRIPT_DIR/client/index.html"
  echo "[*] Swapping out game server"
  sed -i "s/let servers = [\"localhost:3000\"];/let servers = [\"https:\\/\\/$1.$2\"];/" "$SCRIPT_DIR/client/index.html"
}

sub_build_docker_api() {


@@ 185,19 191,18 @@ sub_build_docker_server() {
  build_docker "server" "bleeding"
}

swap_out_server_for() {
  echo "[*] Swapping out API server"
  sed -i'orig' "s/let api_server = \"http:\\/\\/localhost:8080\";/let api_server = \"https:\\/\\/api.$1.$2\";/" "$SCRIPT_DIR/client/index.html"
  echo "[*] Swapping out game server"
  sed -i "s/let servers = [\"localhost:3000\"];/let servers = [\"https:\\/\\/$1.$2\"];/" "$SCRIPT_DIR/client/index.html"
}

sub_build_docker_web() {
  swap_out_server_for "bleeding" "starkingdoms.io"
  build_docker "web" "bleeding"
  mv "$SCRIPT_DIR/client/index.htmlorig" "$SCRIPT_DIR/client/index.html"
}

sub_build_docker_web_stable() {
  swap_out_server_for "stable" "starkingdoms.io"
  build_docker "web" "stable"
  mv "$SCRIPT_DIR/client/index.htmlorig" "$SCRIPT_DIR/client/index.html"
}

sub_build_docker_api_stable() {
  sub_build_api_prod
  build_docker "api" "stable"


@@ 208,12 213,35 @@ sub_build_docker_server_stable() {
  build_docker "server" "stable"
}


sub_build_docker_api_beta() {
  sub_build_api_prod
  build_docker "api" "beta"
}

sub_build_docker_server_beta() {
  sub_build_server_prod
  build_docker "server" "beta"
}

sub_build_docker_web_beta() {
  swap_out_server_for "beta" "starkingdoms.io"
  build_docker "web" "beta"
  mv "$SCRIPT_DIR/client/index.htmlorig" "$SCRIPT_DIR/client/index.html"
}

sub_build_docker() {
  sub_build_docker_api
  sub_build_docker_server
  sub_build_docker_web
}

sub_build_docker_beta() {
  sub_build_docker_api_beta
  sub_build_docker_server_beta
  sub_build_docker_web_beta
}

sub_build_docker_stable() {
  sub_build_docker_api_stable
  sub_build_docker_server_stable

A stable.Jenkinsfile => stable.Jenkinsfile +27 -0
@@ 0,0 1,27 @@
pipeline {
    agent any

    environment {
        DOCKER_LOGIN_CREDS = credentials('gitlab-docker-key')
        PATH = "/var/lib/jenkins/.cargo/bin:$PATH"
    }

    stages {
        stage('Build') {
            steps {
                sh 'cargo build --locked'
            }
        }
        stage('Clippy') {
            steps {
                sh 'cargo clippy --locked'
            }
        }
        stage('Docker') {
            steps {
                sh 'docker login registry.gitlab.com -u ${DOCKER_LOGIN_CREDS_USR} -p ${DOCKER_LOGIN_CREDS_PSW}'
                sh 'STK_CHANNEL=stable STK_BUILD_NUM=${BUILD_NUMBER} ./spacetime build_docker_stable'
            }
        }
    }
}
\ No newline at end of file