forked from BLC/sgeUpdated
Compare commits
15 Commits
8f41ce3d51
...
fix/harbor
| Author | SHA1 | Date | |
|---|---|---|---|
| b64abe3a3a | |||
|
|
54dcb584d6 | ||
| b6a4f0e303 | |||
|
|
e0c8286475 | ||
| 1ebf2f2f9d | |||
|
|
4ddffb6fff | ||
|
|
59b37a64f5 | ||
| a0041afce9 | |||
| d4ffcb9438 | |||
| 7a948f3b7e | |||
| a7ba6fe3e4 | |||
| 7976d56552 | |||
| e3536ea6a3 | |||
| 66aeed7fda | |||
| fcc5edcbe2 |
@@ -22,8 +22,6 @@ jobs:
|
||||
|
||||
- name: Run deploy script on server
|
||||
run: |
|
||||
ssh ${{ secrets.SERVER_USER }}@${{ secrets.SERVER_HOST }} << 'EOF'
|
||||
echo "✅ PR merged into main — running deploy script..."
|
||||
cd /home/ubuntu/Bgreen/sgeUpdated
|
||||
./deploy.sh
|
||||
EOF
|
||||
# We add -tt to force a pseudo-terminal (fixes that stdin error)
|
||||
# We call bash -lc to force a Login Shell, which loads your credentials
|
||||
ssh -tt ${{ secrets.SERVER_USER }}@${{ secrets.SERVER_HOST }} "bash -lc 'cd /home/ubuntu/Bgreen/sgeUpdated && ./deploy.sh'"
|
||||
|
||||
54
deploy.sh
54
deploy.sh
@@ -3,6 +3,18 @@ set -euo pipefail
|
||||
|
||||
cd /home/ubuntu/Bgreen/sgeUpdated
|
||||
|
||||
# -----------------------
|
||||
# Harbor settings
|
||||
# -----------------------
|
||||
HARBOR_REGISTRY="10.10.100.110:8085"
|
||||
HARBOR_PROJECT="bgreen"
|
||||
|
||||
BACKEND_IMAGE_REPO="${HARBOR_REGISTRY}/${HARBOR_PROJECT}/bgreen-backend"
|
||||
FRONTEND_IMAGE_REPO="${HARBOR_REGISTRY}/${HARBOR_PROJECT}/bgreen-frontend"
|
||||
|
||||
# Tag images within git commit (better than latest; enables rollback)
|
||||
VERSION="$(git rev-parse --short HEAD)"
|
||||
|
||||
echo "📦 Fetching latest changes from origin/main..."
|
||||
git fetch myfork main
|
||||
|
||||
@@ -22,12 +34,12 @@ git reset --hard myfork/main
|
||||
BACKEND_CHANGED=false
|
||||
FRONTEND_CHANGED=false
|
||||
|
||||
# Check if backend folder changed
|
||||
# Check if backend folder changed (excluding README.md)
|
||||
if echo "$CHANGED_FILES" | grep "^sge-backend/" | grep -qv "README.md$"; then
|
||||
BACKEND_CHANGED=true
|
||||
fi
|
||||
|
||||
# Check if frontend folder changed
|
||||
# Check if frontend folder changed (excluding README.md)
|
||||
if echo "$CHANGED_FILES" | grep "^sge-frontend/" | grep -qv "README.md$"; then
|
||||
FRONTEND_CHANGED=true
|
||||
fi
|
||||
@@ -37,12 +49,25 @@ fi
|
||||
# -----------------------
|
||||
if [ "$BACKEND_CHANGED" = true ]; then
|
||||
echo "⚡ Backend changes detected."
|
||||
|
||||
cd sge-backend
|
||||
echo "Running Maven build..."
|
||||
/opt/apache-maven-3.9.11/bin/mvn clean install -DskipTests
|
||||
cd ../..
|
||||
echo "Rebuilding backend Docker container..."
|
||||
docker compose up -d --build bgreen-backend
|
||||
|
||||
echo "🐳 Building backend Docker image..."
|
||||
docker build -t "${BACKEND_IMAGE_REPO}:${VERSION}" .
|
||||
|
||||
echo "📤 Pushing backend image to Harbor..."
|
||||
docker push "${BACKEND_IMAGE_REPO}:${VERSION}"
|
||||
|
||||
echo "📥 Pulling backend image from Harbor (to ensure registry is source of truth)..."
|
||||
docker pull "${BACKEND_IMAGE_REPO}:${VERSION}"
|
||||
|
||||
cd ..
|
||||
|
||||
echo "🚀 Recreating backend container using Harbor image..."
|
||||
VERSION="$VERSION" docker compose up -d bgreen-backend
|
||||
|
||||
else
|
||||
echo "✅ No backend changes."
|
||||
fi
|
||||
@@ -56,7 +81,7 @@ if [ "$FRONTEND_CHANGED" = true ]; then
|
||||
|
||||
# Check if package.json or package-lock.json changed
|
||||
if echo "$CHANGED_FILES" | grep -qE "^sge-frontend/(package\.json|package-lock\.json)$"; then
|
||||
echo "📦 package.json changed. Running 'npm instal' and 'npm run build'..."
|
||||
echo "📦 package.json changed. Running 'npm install' and 'npm run build'..."
|
||||
npm install
|
||||
npm run build
|
||||
else
|
||||
@@ -64,9 +89,20 @@ if [ "$FRONTEND_CHANGED" = true ]; then
|
||||
npm run build
|
||||
fi
|
||||
|
||||
cd ../..
|
||||
echo "Rebuilding frontend Docker container..."
|
||||
docker compose up -d --build bgreen-frontend
|
||||
echo "🐳 Building frontend Docker image..."
|
||||
docker build -t "${FRONTEND_IMAGE_REPO}:${VERSION}" .
|
||||
|
||||
echo "📤 Pushing frontend image to Harbor..."
|
||||
docker push "${FRONTEND_IMAGE_REPO}:${VERSION}"
|
||||
|
||||
echo "📥 Pulling frontend image from Harbor (to ensure registry is source of truth)..."
|
||||
docker pull "${FRONTEND_IMAGE_REPO}:${VERSION}"
|
||||
|
||||
cd ..
|
||||
|
||||
echo "🚀 Recreating frontend container using Harbor image..."
|
||||
VERSION="$VERSION" docker compose up -d bgreen-frontend
|
||||
|
||||
else
|
||||
echo "✅ No frontend changes."
|
||||
fi
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
</parent>
|
||||
<groupId>com.sgs</groupId>
|
||||
<artifactId>sgs</artifactId>
|
||||
<version>0.0.1-SNAPSHOT</version>
|
||||
<version>0.0.3-SNAPSHOT</version>
|
||||
<name>sgs</name>
|
||||
<description>SGS project for Spring Boot</description>
|
||||
<properties>
|
||||
|
||||
@@ -187,7 +187,7 @@ public class SgsApplication implements CommandLineRunner {
|
||||
admin.setFirstName("Seda");
|
||||
admin.setLastName("Kemikli");
|
||||
admin.setEmail("seda.kemikli@blc-css.com");
|
||||
admin.setPhoneNumber("11111111");
|
||||
admin.setPhoneNumber("11111511");
|
||||
admin.setPassword(passwordEncoder.encode("admin"));
|
||||
// if (organizations.size() == 1) {
|
||||
// admin.setOrganizations(organizations);
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "sgs-web",
|
||||
"version": "1.0.3",
|
||||
"version": "1.0.1",
|
||||
"private": true,
|
||||
"dependencies": {
|
||||
"@apollo/client": "^3.13.8",
|
||||
|
||||
Reference in New Issue
Block a user