mirror of
https://gitea.com/gitea/tea.git
synced 2026-10-26 19:11:25 +01:00
- **switch tea to the Cobra command tree:** `internal/app` wires the packages from parts 1–4 into explicit noun/verb commands with `--repo`, `--json` / `--jq`, `--sudo` and `--debug`; `main.go` points at it. Build, release and docs tooling (`tools/cli-docs`, Makefile, goreleaser, snap, CI) and README / CONTRIBUTING are updated. - **remove the urfave/cli command tree:** deletes `cmd/`, `modules/`, the old integration tests, contrib completion scripts and the generated `docs/CLI.md`, and drops their dependencies. This commit only deletes. ## Breaking changes This is a breaking release. It requires Gitea 28 or newer; configuration moves to separate `config.yml` and `hosts.yml` files and requires fresh authentication, and command names, aliases, flags and output formats change. `docs/migration-1.0.md` maps every old command, flag and environment variable to its replacement. ## Issues fixes #1118 fixes #1116 fixes #1115 fixes #1094 fixes #1091 fixes #1073 fixes #1052 fixes #1032 fixes #1023 fixes #966 fixes #908 fixes #833 fixes #831 fixes #817 fixes #804 fixes #779 fixes #770 fixes #737 fixes #697 fixes #726 fixes #677 fixes #672 fixes #633 fixes #632 fixes #560 fixes #556 fixes #523 fixes #516 fixes #510 fixes #504 fixes #500 fixes #482 fixes #406 fixes #403 fixes #373 fixes #351 fixes #344 fixes #326 fixes #325 fixes #323 fixes #246 fixes #240 fixes #232 fixes #197 fixes #172 fixes #141 fixes #69 fixes #1110 fixes #569 fixes #480 fixes #666 fixes #670 fixes #457 fixes #643 fixes #498 fixes #490 fixes #1069 fixes #834 fixes #602 fixes #328 fixes #417 fixes #571 fixes #1029 fixes #489 fixes #1050 fixes #162 fixes #430 fixes #1087 fixes #683 Reviewed-on: https://gitea.com/gitea/tea/pulls/1126 Reviewed-by: TheFox0x7 <95654+thefox0x7@noreply.gitea.com>
93 lines
3.6 KiB
YAML
93 lines
3.6 KiB
YAML
name: check-and-test
|
|
|
|
on:
|
|
- pull_request
|
|
|
|
jobs:
|
|
#govulncheck_job:
|
|
# runs-on: ubuntu-latest
|
|
# name: Run govulncheck
|
|
# steps:
|
|
# - id: govulncheck
|
|
# uses: golang/govulncheck-action@v1
|
|
# with:
|
|
# go-version-file: 'go.mod'
|
|
check-and-unit:
|
|
name: Lint Build And Unit Coverage
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
|
|
- uses: actions/setup-go@b7ad1dad31e06c5925ef5d2fc7ad053ef454303e # v7
|
|
with:
|
|
go-version-file: 'go.mod'
|
|
check-latest: true
|
|
- name: lint and build
|
|
run: |
|
|
make clean
|
|
make vet
|
|
make lint
|
|
make fmt-check
|
|
make build
|
|
- name: unit test and coverage
|
|
run: |
|
|
make unit-test-coverage
|
|
|
|
integration-test:
|
|
name: Integration Test
|
|
runs-on: ubuntu-latest
|
|
env:
|
|
HTTP_PROXY: ""
|
|
GITEA_TEA_TEST_URL: "http://gitea:3000"
|
|
GITEA_TEA_TEST_TOKEN_FILE: /tmp/tea-ci-admin-token
|
|
GITEA_TEA_TEST_REVIEWER_TOKEN_FILE: /tmp/tea-ci-reviewer-token
|
|
GITEA_TEA_TEST_REPOSITORY_ROOT: /tmp/data
|
|
steps:
|
|
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
|
|
- uses: actions/setup-go@b7ad1dad31e06c5925ef5d2fc7ad053ef454303e # v7
|
|
with:
|
|
go-version-file: 'go.mod'
|
|
check-latest: true
|
|
- name: wait for the gitea instance to be ready
|
|
run: |
|
|
for i in $(seq 1 30); do
|
|
if curl --noproxy "*" -sf http://gitea:3000/api/v1/version; then
|
|
echo "gitea is ready after ${i} attempt(s)"
|
|
exit 0
|
|
fi
|
|
echo "waiting for gitea, attempt ${i}/30"
|
|
sleep 2
|
|
done
|
|
echo "::error::gitea did not become ready within 60s"
|
|
exit 1
|
|
- name: create private token fixtures
|
|
run: python3 scripts/integration-tokens.py
|
|
- name: integration test
|
|
run: |
|
|
make integration-test
|
|
services:
|
|
gitea:
|
|
image: docker.gitea.com/gitea:28.0.0
|
|
cmd:
|
|
- 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 "IMPORT_LOCAL_PATHS = true" >> /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://gitea:3000" >> /tmp/conf/app.ini
|
|
&& gitea migrate -c /tmp/conf/app.ini
|
|
&& gitea admin user create --username=integration --password=tea-local-integration-pass --email=integration@example.test --admin=true --must-change-password=false -c /tmp/conf/app.ini
|
|
&& gitea admin user create --username=tea-reviewer --password=tea-local-reviewer-pass --email=tea-reviewer@example.test --must-change-password=false -c /tmp/conf/app.ini
|
|
&& gitea web -c /tmp/conf/app.ini
|