diff --git a/Dockerfile b/Dockerfile index 78d1e9b..deb94c2 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,25 +1,11 @@ FROM gitea/gitea:1.14.5-rootless -ARG DATABASE_URL -ENV DATABASE_URL=${DATABASE_URL} -COPY --chown=root:root run.sh /usr/local/bin/ -ADD conf/ /var/lib/gitea/custom/conf/ + +WORKDIR /app + +COPY app_url.txt ./ +COPY run.sh ./ + USER root -RUN chmod 755 /usr/local/bin/run.sh -RUN chmod a+rwx /var/lib/gitea/custom/conf/app.ini +RUN chmod +x ./run.sh -USER 1000:1000 - -CMD ["/usr/local/bin/run.sh"] - - -#FROM gitea/gitea:1.14.5 -# -#WORKDIR /app -# -#COPY run.sh ./ -# -#ENV GITEA_CUSTOM=/var/lib/gitea/custom -# -#RUN chmod +x ./run.sh -# -#ENTRYPOINT ["./run.sh"] +ENTRYPOINT ["./run.sh"] diff --git a/app_url.txt b/app_url.txt new file mode 100644 index 0000000..b1cab7c --- /dev/null +++ b/app_url.txt @@ -0,0 +1 @@ +https://s464951-gitea-fa34820a73f7.herokuapp.com/ diff --git a/conf/app.ini b/conf/app.ini deleted file mode 100644 index e69de29..0000000 diff --git a/deploy.sh b/deploy.sh new file mode 100755 index 0000000..871bf01 --- /dev/null +++ b/deploy.sh @@ -0,0 +1,27 @@ +#!/bin/bash + +# App name +APP_NAME=s464951-gitea + +heroku create --stack container --region eu $APP_NAME --json +APP_URL=$(heroku info -s | grep web_url | cut -d= -f2) + +echo $APP_URL > app_url.txt + +heroku addons:create heroku-postgresql:essential-0 --app $APP_NAME + +echo "Waiting for Heroku Postgres to be fully provisioned..." +heroku pg:wait --app $APP_NAME + +echo DB_URL +heroku config:get DATABASE_URL -a $APP_NAME + + +# Push to Heroku +heroku git:remote --app $APP_NAME +git add . +git commit -m "Deploy to Heroku" +git push heroku main + +# Open the app in the browser +heroku open --app $APP_NAME \ No newline at end of file diff --git a/heroku-app.txt b/heroku-app.txt new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/heroku-app.txt @@ -0,0 +1 @@ + diff --git a/heroku.yml b/heroku.yml index 8382201..3315a0f 100644 --- a/heroku.yml +++ b/heroku.yml @@ -1,23 +1,8 @@ setup: addons: - - plan: heroku-postgresql:standard-0 + - plan: heroku-postgresql as: DATABASE + build: docker: web: Dockerfile -run: - web: /usr/local/bin/run.sh - - -#setup: -# addons: -# - plan: heroku-postgresql -# as: DATABASE -## config: -## POSTGRES_USER: "gitea" -## POSTGRES_PASSWORD: "gitea" -## POSTGRES_DB: "gitea" -# -#build: -# docker: -# web: Dockerfile diff --git a/run.sh b/run.sh index 851c394..9b0fe5d 100644 --- a/run.sh +++ b/run.sh @@ -1,45 +1,26 @@ +#!/bin/bash + + +FILE=./app_url.txt +ROOT_URL=$(cat $FILE) + +printf($ROOT_URL) HOST=`echo $DATABASE_URL | grep -o "@.*/" | sed 's/.$//' | cut -c 2-` NAME=`echo $DATABASE_URL | grep -o "/[[:alnum:]]*$" | cut -c 2-` USER=`echo $DATABASE_URL | grep -o "//[[:alnum:]]*:" | grep -o "[[:alnum:]]*"` PASSWD=`echo $DATABASE_URL | grep -o ":[[:alnum:]]*@" | grep -o "[[:alnum:]]*"` -printf "[server]\nHTTP_PORT = $PORT;\n" > /var/lib/gitea/custom/conf/app.ini -printf "DOMAIN = $HEROKU_APP_DEFAULT_DOMAIN_NAME\n" >> /var/lib/gitea/custom/conf/app.ini -printf "\n[database]\nDB_TYPE = postgres;\n" >> /var/lib/gitea/custom/conf/app.ini -printf "NAME = $NAME;\n" >> /var/lib/gitea/custom/conf/app.ini -printf "HOST = $HOST;\n" >> /var/lib/gitea/custom/conf/app.ini -printf "USER = $USER;\n" >> /var/lib/gitea/custom/conf/app.ini -printf "PASSWD = $PASSWD;\n" >> /var/lib/gitea/custom/conf/app.ini -printf "SSL_MODE=require ;\n" >> /var/lib/gitea/custom/conf/app.ini -cat /var/lib/gitea/custom/conf/app.ini -/usr/local/bin/gitea web -port $PORT +mkdir -p /var/lib/gitea/custom/conf +echo "[server]" > /var/lib/gitea/custom/conf/app.ini +echo "ROOT_URL = $ROOT_URL >> /var/lib/gitea/custom/conf/app.ini -##!/bin/bash -# -# -# -#echo $APP_URL -#echo DATABASE_URL -#echo $DATABASE_URL -# -#HOST=`echo $DATABASE_URL | grep -o "@.*/" | sed 's/.$//' | cut -c 2-` -#NAME=`echo $DATABASE_URL | grep -o "/[[:alnum:]]*$" | cut -c 2-` -#USER=`echo $DATABASE_URL | grep -o "//[[:alnum:]]*:" | grep -o "[[:alnum:]]*"` -#PASSWD=`echo $DATABASE_URL | grep -o ":[[:alnum:]]*@" | grep -o "[[:alnum:]]*"` -# -#mkdir -p /var/lib/gitea/custom/conf -# -#echo "[server]" > /var/lib/gitea/custom/conf/app.ini -#echo "ROOT_URL = $APP_URL" >> /var/lib/gitea/custom/conf/app.ini -# -#echo "[database]" >> /var/lib/gitea/custom/conf/app.ini -#echo "DB_TYPE = postgres" >> /var/lib/gitea/custom/conf/app.ini -#echo "HOST = $HOST" >> /var/lib/gitea/custom/conf/app.ini -#echo "NAME = $NAME" >> /var/lib/gitea/custom/conf/app.ini -#echo "USER = $USER" >> /var/lib/gitea/custom/conf/app.ini -#echo "PASSWD = $PASSWD" >> /var/lib/gitea/custom/conf/app.ini -#echo "SSL_MODE = require" >> /var/lib/gitea/custom/conf/app.ini -# -#cat /var/lib/gitea/custom/conf/app.ini -#/usr/local/bin/gitea web --port $PORT \ No newline at end of file +echo "[database]" >> /var/lib/gitea/custom/conf/app.ini +echo "DB_TYPE = postgres" >> /var/lib/gitea/custom/conf/app.ini +echo "HOST = $HOST" >> /var/lib/gitea/custom/conf/app.ini +echo "NAME = $NAME" >> /var/lib/gitea/custom/conf/app.ini +echo "USER = $USER" >> /var/lib/gitea/custom/conf/app.ini +echo "PASSWD = $PASSWD" >> /var/lib/gitea/custom/conf/app.ini +echo "SSL_MODE = require" >> /var/lib/gitea/custom/conf/app.ini + +/usr/local/bin/gitea web --port $PORT \ No newline at end of file