cicd port ozgardi
Some checks failed
Deploy to Production / build-and-deploy (push) Failing after 2m52s
Some checks failed
Deploy to Production / build-and-deploy (push) Failing after 2m52s
This commit is contained in:
57
.github/workflows/deploy.yaml
vendored
57
.github/workflows/deploy.yaml
vendored
@@ -8,7 +8,6 @@ on:
|
||||
env:
|
||||
PROJECT_NAME: sifatbaho
|
||||
|
||||
|
||||
permissions:
|
||||
contents: write
|
||||
|
||||
@@ -112,38 +111,52 @@ jobs:
|
||||
key: ${{ secrets.KEY }}
|
||||
port: ${{ secrets.PORT }}
|
||||
script: |
|
||||
PROJECTS=/opt/projects/
|
||||
DIR=/opt/projects/${{ env.PROJECT_NAME }}/
|
||||
set -e
|
||||
|
||||
if [ -d "$PROJECTS" ]; then
|
||||
echo "projects papkasi mavjud"
|
||||
else
|
||||
mkdir -p $PROJECTS
|
||||
echo "projects papkasi yaratildi"
|
||||
fi
|
||||
PROJECTS=/opt/projects
|
||||
DIR=/opt/projects/${{ env.PROJECT_NAME }}
|
||||
|
||||
if [ -d "$DIR" ]; then
|
||||
mkdir -p "$PROJECTS"
|
||||
echo "projects papkasi mavjud"
|
||||
|
||||
# Gitea SSH port: 2222
|
||||
mkdir -p ~/.ssh
|
||||
cat >> ~/.ssh/config <<'EOF'
|
||||
Host gitea.felixits.uz
|
||||
HostName gitea.felixits.uz
|
||||
User git
|
||||
Port 2222
|
||||
StrictHostKeyChecking no
|
||||
EOF
|
||||
chmod 600 ~/.ssh/config
|
||||
|
||||
# Clone (agar yo'q bo'lsa) yoki update
|
||||
if [ -d "$DIR/.git" ]; then
|
||||
echo "loyiha mavjud"
|
||||
else
|
||||
cd $PROJECTS
|
||||
git clone git@gitea.felixits.uz:${{ github.repository }}.git ${{ env.PROJECT_NAME }}
|
||||
echo "Clone qilindi";
|
||||
rm -rf "$DIR"
|
||||
cd "$PROJECTS"
|
||||
git clone ssh://git@gitea.felixits.uz:2222/${{ github.repository }}.git "${{ env.PROJECT_NAME }}"
|
||||
echo "Clone qilindi"
|
||||
fi
|
||||
|
||||
cd $DIR
|
||||
cd "$DIR"
|
||||
git fetch origin main
|
||||
git reset --hard origin/main
|
||||
|
||||
cp .env.example .env
|
||||
|
||||
update_env() {
|
||||
local env_file=".env"
|
||||
cp .env.example "$env_file"
|
||||
|
||||
for kv in "$@"; do
|
||||
local key="${kv%%=*}"
|
||||
local value="${kv#*=}"
|
||||
sed -i "s|^$key=.*|$key=$value|" "$env_file"
|
||||
done
|
||||
local env_file=".env"
|
||||
for kv in "$@"; do
|
||||
local key="${kv%%=*}"
|
||||
local value="${kv#*=}"
|
||||
if grep -q "^$key=" "$env_file"; then
|
||||
sed -i "s|^$key=.*|$key=$value|" "$env_file"
|
||||
else
|
||||
echo "$key=$value" >> "$env_file"
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
update_env \
|
||||
|
||||
Reference in New Issue
Block a user