48 lines
2 KiB
YAML
48 lines
2 KiB
YAML
|
variables:
|
||
|
- &golang_image 'golang:1.22'
|
||
|
|
||
|
when:
|
||
|
- branch: main
|
||
|
event: push
|
||
|
|
||
|
steps:
|
||
|
- name: setup
|
||
|
image: *golang_image
|
||
|
environment:
|
||
|
GOPROXY: "https://goproxy.io"
|
||
|
GO111MODULE: "on"
|
||
|
HTTP_PROXY: ""
|
||
|
FORGEJO_SDK_TEST_URL: "http://forgejo:3000"
|
||
|
FORGEJO_SDK_TEST_USERNAME: "test01"
|
||
|
FORGEJO_SDK_TEST_PASSWORD: "test01"
|
||
|
commands:
|
||
|
- git checkout ${CI_COMMIT_SHA}
|
||
|
- go version
|
||
|
- make clean
|
||
|
|
||
|
- name: verify_connection
|
||
|
image: *golang_image
|
||
|
commands:
|
||
|
- curl --noproxy "*" http://forgejo:3000/api/v1/version
|
||
|
|
||
|
- name: test
|
||
|
image: *golang_image
|
||
|
environment:
|
||
|
GOPROXY: "https://goproxy.io"
|
||
|
GO111MODULE: "on"
|
||
|
HTTP_PROXY: ""
|
||
|
FORGEJO_SDK_TEST_URL: "http://forgejo:3000"
|
||
|
FORGEJO_SDK_TEST_USERNAME: "test01"
|
||
|
FORGEJO_SDK_TEST_PASSWORD: "test01"
|
||
|
commands:
|
||
|
- make test
|
||
|
|
||
|
depends_on:
|
||
|
- build
|
||
|
|
||
|
services:
|
||
|
- name: forgejo
|
||
|
image: codeberg.org/forgejo/forgejo:1.21.5-0
|
||
|
commands:
|
||
|
- bash -c 'mkdir -p /tmp/conf/ && mkdir -p /tmp/data/ && echo "I_AM_BEING_UNSAFE_RUNNING_AS_ROOT = true" > /tmp/conf/app.ini && echo "[security]" >> /tmp/conf/app.ini && echo "INTERNAL_TOKEN = eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYmYiOjE1NTg4MzY4ODB9.LoKQyK5TN_0kMJFVHWUW0uDAyoGjDP6Mkup4ps2VJN4" >> /tmp/conf/app.ini && echo "INSTALL_LOCK = true" >> /tmp/conf/app.ini && echo "SECRET_KEY = 2crAW4UANgvLipDS6U5obRcFosjSJHQANll6MNfX7P0G3se3fKcCwwK3szPyGcbo" >> /tmp/conf/app.ini && echo "PASSWORD_COMPLEXITY = off" >> /tmp/conf/app.ini && echo "[database]" >> /tmp/conf/app.ini && echo "DB_TYPE = sqlite3" >> /tmp/conf/app.ini && echo "[repository]" >> /tmp/conf/app.ini && echo "ROOT = /tmp/data/" >> /tmp/conf/app.ini && echo "[server]" >> /tmp/conf/app.ini && echo "ROOT_URL = http://forgejo:3000" >> /tmp/conf/app.ini && forgejo migrate -c /tmp/conf/app.ini && forgejo admin user create --username=test01 --password=test01 --email=test01@forgejo.org --admin=true --must-change-password=false --access-token -c /tmp/conf/app.ini && forgejo web -c /tmp/conf/app.ini'
|