cgitize 6.0.0__tar.gz → 6.0.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- cgitize-6.0.1/.github/dependabot.yml +6 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/.github/workflows/ci.yml +12 -12
- {cgitize-6.0.0 → cgitize-6.0.1}/DEVELOPMENT.md +2 -1
- {cgitize-6.0.0 → cgitize-6.0.1}/Makefile +19 -0
- {cgitize-6.0.0/cgitize.egg-info → cgitize-6.0.1}/PKG-INFO +1 -1
- {cgitize-6.0.0 → cgitize-6.0.1}/cgitize/utils.py +1 -1
- {cgitize-6.0.0 → cgitize-6.0.1/cgitize.egg-info}/PKG-INFO +1 -1
- {cgitize-6.0.0 → cgitize-6.0.1}/cgitize.egg-info/SOURCES.txt +1 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/docker/README.md +1 -3
- {cgitize-6.0.0 → cgitize-6.0.1}/docker/frontend/Dockerfile +10 -1
- {cgitize-6.0.0 → cgitize-6.0.1}/docker-compose.yml +0 -2
- cgitize-6.0.1/requirements.txt +23 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/test/integration/docker/docker-compose.yml +0 -1
- {cgitize-6.0.0 → cgitize-6.0.1}/test/integration/docker/test.sh +5 -11
- cgitize-6.0.0/requirements.txt +0 -23
- {cgitize-6.0.0 → cgitize-6.0.1}/.dockerignore +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/.gitattributes +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/.gitignore +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/.pylintrc +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/.python-version +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/LICENSE.txt +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/README.md +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/cgitize/__init__.py +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/cgitize/bitbucket.py +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/cgitize/cgit.py +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/cgitize/config.py +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/cgitize/git.py +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/cgitize/github.py +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/cgitize/gitlab.py +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/cgitize/main.py +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/cgitize/repo.py +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/cgitize/version.py +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/cgitize.egg-info/dependency_links.txt +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/cgitize.egg-info/entry_points.txt +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/cgitize.egg-info/requires.txt +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/cgitize.egg-info/top_level.txt +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/docker/Dockerfile +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/docker/cgitize.sh +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/docker/frontend/cmd.sh +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/docker/frontend/etc/cgit/common +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/docker/frontend/etc/cgitrc +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/docker/frontend/etc/nginx/conf.d/default.conf +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/docker/frontend/usr/lib/cgit/filters/about-formatting.sh +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/docker/frontend/usr/lib/cgit/filters/html-converters/.gitattributes +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/docker/frontend/usr/lib/cgit/filters/html-converters/md2html +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/docker/get_output_dir.py +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/docker/in_cron.sh +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/docs/api.md +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/docs/auth.md +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/examples/cgitize.toml +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/examples/docker/cgitize.toml +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/prelude.mk +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/pyproject.toml +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/setup.cfg +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/test/__init__.py +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/test/integration/docker/.dockerignore +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/test/integration/docker/cgitize/.gitignore +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/test/integration/docker/cgitize/etc/cgitize.toml +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/test/integration/docker/git_server/Dockerfile +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/test/integration/docker/git_server/setup_repo.sh +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/test/integration/example/test.sh +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/test/integration/local/test.sh +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/test/set_credentials.sh +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/test/unit/__init__.py +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/test/unit/test_bitbucket.py +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/test/unit/test_github.py +0 -0
- {cgitize-6.0.0 → cgitize-6.0.1}/test/unit/test_gitlab.py +0 -0
|
@@ -12,7 +12,7 @@ jobs:
|
|
|
12
12
|
runs-on: ubuntu-latest
|
|
13
13
|
strategy:
|
|
14
14
|
matrix:
|
|
15
|
-
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13']
|
|
15
|
+
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13', '3.14']
|
|
16
16
|
name: 'Test / ${{ matrix.python-version }}'
|
|
17
17
|
env:
|
|
18
18
|
CGITIZE_GITHUB_USERNAME: cgitize-test
|
|
@@ -23,11 +23,11 @@ jobs:
|
|
|
23
23
|
CGITIZE_GITLAB_TOKEN: '${{ secrets.CGITIZE_GITLAB_TOKEN}}'
|
|
24
24
|
steps:
|
|
25
25
|
- name: Checkout
|
|
26
|
-
uses: actions/checkout@
|
|
26
|
+
uses: actions/checkout@v6
|
|
27
27
|
with:
|
|
28
28
|
fetch-depth: 0
|
|
29
29
|
- name: Set up Python
|
|
30
|
-
uses: actions/setup-python@
|
|
30
|
+
uses: actions/setup-python@v6
|
|
31
31
|
with:
|
|
32
32
|
python-version: '${{ matrix.python-version }}'
|
|
33
33
|
cache: pip
|
|
@@ -43,7 +43,7 @@ jobs:
|
|
|
43
43
|
name: 'Test / Docker'
|
|
44
44
|
steps:
|
|
45
45
|
- name: Checkout
|
|
46
|
-
uses: actions/checkout@
|
|
46
|
+
uses: actions/checkout@v6
|
|
47
47
|
- name: Integration test (Docker)
|
|
48
48
|
run: sudo make test/docker
|
|
49
49
|
|
|
@@ -60,15 +60,15 @@ jobs:
|
|
|
60
60
|
CGITIZE_GITLAB_TOKEN: '${{ secrets.CGITIZE_GITLAB_TOKEN}}'
|
|
61
61
|
steps:
|
|
62
62
|
- name: Checkout
|
|
63
|
-
uses: actions/checkout@
|
|
63
|
+
uses: actions/checkout@v6
|
|
64
64
|
- name: Set up Python
|
|
65
|
-
uses: actions/setup-python@
|
|
65
|
+
uses: actions/setup-python@v6
|
|
66
66
|
with:
|
|
67
67
|
cache: pip
|
|
68
68
|
- name: Install dependencies
|
|
69
69
|
run: pip install -q -r requirements.txt
|
|
70
70
|
- name: Set up ssh-agent
|
|
71
|
-
uses: webfactory/ssh-agent@v0.
|
|
71
|
+
uses: webfactory/ssh-agent@v0.9.1
|
|
72
72
|
with:
|
|
73
73
|
ssh-private-key: '${{ secrets.SSH_KEY }}'
|
|
74
74
|
- name: Integration test (example config)
|
|
@@ -87,7 +87,7 @@ jobs:
|
|
|
87
87
|
if: github.event_name == 'push' && (github.ref == 'refs/heads/master' || startsWith(github.ref, 'refs/tags/'))
|
|
88
88
|
steps:
|
|
89
89
|
- name: Checkout
|
|
90
|
-
uses: actions/checkout@
|
|
90
|
+
uses: actions/checkout@v6
|
|
91
91
|
# https://github.com/docker/metadata-action#semver
|
|
92
92
|
- id: meta
|
|
93
93
|
name: Docker Hub metadata
|
|
@@ -120,7 +120,7 @@ jobs:
|
|
|
120
120
|
echo 'platforms=amd64,armhf,arm64' >> "$GITHUB_OUTPUT"
|
|
121
121
|
fi
|
|
122
122
|
- name: Build and publish
|
|
123
|
-
uses: docker/build-push-action@
|
|
123
|
+
uses: docker/build-push-action@v6
|
|
124
124
|
with:
|
|
125
125
|
context: '${{ matrix.context }}'
|
|
126
126
|
file: '${{ matrix.file }}'
|
|
@@ -135,11 +135,11 @@ jobs:
|
|
|
135
135
|
name: 'Publish / PyPI'
|
|
136
136
|
steps:
|
|
137
137
|
- name: Checkout
|
|
138
|
-
uses: actions/checkout@
|
|
138
|
+
uses: actions/checkout@v6
|
|
139
139
|
with:
|
|
140
140
|
fetch-depth: 0
|
|
141
141
|
- name: Set up Python
|
|
142
|
-
uses: actions/setup-python@
|
|
142
|
+
uses: actions/setup-python@v6
|
|
143
143
|
- name: Verify package can be installed
|
|
144
144
|
run: pip install -q .
|
|
145
145
|
- name: Install package builder
|
|
@@ -147,7 +147,7 @@ jobs:
|
|
|
147
147
|
- name: Build package
|
|
148
148
|
run: python -m build
|
|
149
149
|
- name: Publish as artifact
|
|
150
|
-
uses: actions/upload-artifact@
|
|
150
|
+
uses: actions/upload-artifact@v6
|
|
151
151
|
with:
|
|
152
152
|
name: dist
|
|
153
153
|
path: dist
|
|
@@ -49,7 +49,8 @@ another user, it could get used instead).
|
|
|
49
49
|
Upgrading dependencies
|
|
50
50
|
----------------------
|
|
51
51
|
|
|
52
|
-
* Upgrade virtual environment packages: `make venv/upgrade
|
|
52
|
+
* Upgrade virtual environment packages: `make venv/upgrade`.
|
|
53
|
+
`make maintenance` does that and pushes a commit to the upstream.
|
|
53
54
|
* Upgrade base Docker images.
|
|
54
55
|
* Find the current base images using `git grep -P 'FROM \w+:'`
|
|
55
56
|
* Upgrade the [cmark-gfm] version used in the [cgitize-frontend Docker image].
|
|
@@ -23,6 +23,25 @@ venv/upgrade: venv/reset
|
|
|
23
23
|
&& pip uninstall -q --yes '$(call escape,$(PROJECT))' \
|
|
24
24
|
&& pip freeze > requirements.txt
|
|
25
25
|
|
|
26
|
+
.PHONY: maintenance
|
|
27
|
+
maintenance:
|
|
28
|
+
$(MAKE) venv/upgrade
|
|
29
|
+
|
|
30
|
+
@git_status="$$( git status --porcelain=v1 )" && \
|
|
31
|
+
if [ -z "$$git_status" ]; then \
|
|
32
|
+
true; \
|
|
33
|
+
elif [ "$$git_status" = ' M requirements.txt' ]; then \
|
|
34
|
+
git commit -am 'requirements.txt: bump dependencies' && \
|
|
35
|
+
git push -q; \
|
|
36
|
+
else \
|
|
37
|
+
echo; \
|
|
38
|
+
echo '-----------------------------------------------------------------'; \
|
|
39
|
+
echo 'Error: unrecognized modifications in the repository:'; \
|
|
40
|
+
echo "$$git_status"; \
|
|
41
|
+
echo '-----------------------------------------------------------------'; \
|
|
42
|
+
exit 1; \
|
|
43
|
+
fi
|
|
44
|
+
|
|
26
45
|
.PHONY: python
|
|
27
46
|
python:
|
|
28
47
|
$(venv_activate) && python
|
|
@@ -17,7 +17,7 @@ def setup_logging(verbose=False):
|
|
|
17
17
|
level = logging.DEBUG if verbose else logging.INFO
|
|
18
18
|
logging.basicConfig(
|
|
19
19
|
level=level,
|
|
20
|
-
datefmt='%Y-%m-%d %H:%M:%S',
|
|
20
|
+
datefmt='%Y-%m-%d %H:%M:%S%z',
|
|
21
21
|
format='%(asctime)s | %(levelname)s | %(message)s',
|
|
22
22
|
# Log to stdout, because that's where subprocess's output goes (so that
|
|
23
23
|
# the don't get interleaved).
|
|
@@ -41,8 +41,6 @@ Compose
|
|
|
41
41
|
|
|
42
42
|
Here's an example docker-compose.yml file:
|
|
43
43
|
|
|
44
|
-
version: '3'
|
|
45
|
-
|
|
46
44
|
services:
|
|
47
45
|
cgitize:
|
|
48
46
|
environment:
|
|
@@ -68,6 +66,6 @@ In this configuration, cgitize pulls repositories defined in example.toml every
|
|
|
68
66
|
|
|
69
67
|
To launch containers, run:
|
|
70
68
|
|
|
71
|
-
docker
|
|
69
|
+
docker compose up -d
|
|
72
70
|
|
|
73
71
|
To inspect the repositories, visit http://localhost:80/.
|
|
@@ -8,9 +8,18 @@ ADD ["https://github.com/github/cmark-gfm/archive/refs/tags/$CMARK_GFM_VERSION.z
|
|
|
8
8
|
|
|
9
9
|
RUN apk add -q --no-cache cmake g++ make python3 && \
|
|
10
10
|
ln -sf /usr/bin/python3 /usr/bin/python
|
|
11
|
+
|
|
11
12
|
RUN unzip -q -- "$CMARK_GFM_VERSION.zip" && \
|
|
12
13
|
cd -- "cmark-gfm-$CMARK_GFM_VERSION" && \
|
|
13
|
-
|
|
14
|
+
mkdir build && \
|
|
15
|
+
cd build && \
|
|
16
|
+
cmake \
|
|
17
|
+
-DCMAKE_BUILD_TYPE=Release \
|
|
18
|
+
-DCMAKE_EXPORT_COMPILE_COMMANDS=ON \
|
|
19
|
+
-DCMAKE_INSTALL_PREFIX=/cmark-gfm \
|
|
20
|
+
-DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
|
|
21
|
+
.. && \
|
|
22
|
+
make -j && \
|
|
14
23
|
make test && \
|
|
15
24
|
make install > /dev/null
|
|
16
25
|
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
atlassian-python-api==4.0.7
|
|
2
|
+
beautifulsoup4==4.14.3
|
|
3
|
+
certifi==2026.1.4
|
|
4
|
+
cffi==2.0.0
|
|
5
|
+
charset-normalizer==3.4.4
|
|
6
|
+
cryptography==46.0.3
|
|
7
|
+
Deprecated==1.3.1
|
|
8
|
+
idna==3.11
|
|
9
|
+
jmespath==1.0.1
|
|
10
|
+
oauthlib==3.3.1
|
|
11
|
+
pycparser==2.23
|
|
12
|
+
PyGithub==2.8.1
|
|
13
|
+
PyJWT==2.10.1
|
|
14
|
+
PyNaCl==1.6.2
|
|
15
|
+
python-gitlab==6.5.0
|
|
16
|
+
requests==2.32.5
|
|
17
|
+
requests-oauthlib==2.0.0
|
|
18
|
+
requests-toolbelt==1.0.0
|
|
19
|
+
soupsieve==2.8.1
|
|
20
|
+
tomli==1.2.3
|
|
21
|
+
typing_extensions==4.15.0
|
|
22
|
+
urllib3==2.6.3
|
|
23
|
+
wrapt==2.0.1
|
|
@@ -17,12 +17,6 @@ readonly client_key_password='password'
|
|
|
17
17
|
readonly output_dir="$script_dir/cgitize/output"
|
|
18
18
|
readonly frontend_host=localhost
|
|
19
19
|
|
|
20
|
-
if command -v docker-compose > /dev/null 2>&1; then
|
|
21
|
-
readonly docker_compose=docker-compose
|
|
22
|
-
else
|
|
23
|
-
readonly docker_compose='docker compose'
|
|
24
|
-
fi
|
|
25
|
-
|
|
26
20
|
dump() {
|
|
27
21
|
local prefix="${FUNCNAME[0]}"
|
|
28
22
|
[ "${#FUNCNAME[@]}" -gt 1 ] && prefix="${FUNCNAME[1]}"
|
|
@@ -165,12 +159,12 @@ docker_build() {
|
|
|
165
159
|
echo Building Docker images
|
|
166
160
|
echo ----------------------------------------------------------------------
|
|
167
161
|
|
|
168
|
-
|
|
162
|
+
docker compose --progress plain build
|
|
169
163
|
}
|
|
170
164
|
|
|
171
165
|
docker_cleanup() {
|
|
172
166
|
dump 'cleaning up Docker data'
|
|
173
|
-
|
|
167
|
+
docker compose down --rmi all --volumes
|
|
174
168
|
# Use `docker system prune` as well?
|
|
175
169
|
}
|
|
176
170
|
|
|
@@ -186,7 +180,7 @@ run_git_server() {
|
|
|
186
180
|
echo Running the Git server
|
|
187
181
|
echo ----------------------------------------------------------------------
|
|
188
182
|
|
|
189
|
-
|
|
183
|
+
docker compose up -d git_server
|
|
190
184
|
}
|
|
191
185
|
|
|
192
186
|
run_cgitize() {
|
|
@@ -200,7 +194,7 @@ run_cgitize() {
|
|
|
200
194
|
return 1
|
|
201
195
|
fi
|
|
202
196
|
dump "SSH_AUTH_SOCK: $SSH_AUTH_SOCK"
|
|
203
|
-
|
|
197
|
+
docker compose run --rm cgitize
|
|
204
198
|
}
|
|
205
199
|
|
|
206
200
|
run_frontend() {
|
|
@@ -209,7 +203,7 @@ run_frontend() {
|
|
|
209
203
|
echo Running the frontend
|
|
210
204
|
echo ----------------------------------------------------------------------
|
|
211
205
|
|
|
212
|
-
|
|
206
|
+
docker compose up -d frontend
|
|
213
207
|
sleep 2
|
|
214
208
|
}
|
|
215
209
|
|
cgitize-6.0.0/requirements.txt
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
atlassian-python-api==4.0.4
|
|
2
|
-
beautifulsoup4==4.13.4
|
|
3
|
-
certifi==2025.7.14
|
|
4
|
-
cffi==1.17.1
|
|
5
|
-
charset-normalizer==3.4.2
|
|
6
|
-
cryptography==45.0.5
|
|
7
|
-
Deprecated==1.2.18
|
|
8
|
-
idna==3.10
|
|
9
|
-
jmespath==1.0.1
|
|
10
|
-
oauthlib==3.3.1
|
|
11
|
-
pycparser==2.22
|
|
12
|
-
PyGithub==2.6.1
|
|
13
|
-
PyJWT==2.10.1
|
|
14
|
-
PyNaCl==1.5.0
|
|
15
|
-
python-gitlab==6.1.0
|
|
16
|
-
requests==2.32.4
|
|
17
|
-
requests-oauthlib==2.0.0
|
|
18
|
-
requests-toolbelt==1.0.0
|
|
19
|
-
soupsieve==2.7
|
|
20
|
-
tomli==1.2.3
|
|
21
|
-
typing_extensions==4.14.1
|
|
22
|
-
urllib3==2.5.0
|
|
23
|
-
wrapt==1.17.2
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cgitize-6.0.0 → cgitize-6.0.1}/docker/frontend/usr/lib/cgit/filters/html-converters/.gitattributes
RENAMED
|
File without changes
|
{cgitize-6.0.0 → cgitize-6.0.1}/docker/frontend/usr/lib/cgit/filters/html-converters/md2html
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|