Skip to content

Commit 52e68d9

Browse files
Copilotkinkie
authored andcommitted
Squid programming guide to github pages
Use a github workflow and github pages to build and serve the squid programming guide License is CC-BY-SA
1 parent c68c933 commit 52e68d9

File tree

26,785 files changed

+6601666
-675
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

26,785 files changed

+6601666
-675
lines changed

.github/workflows/gen-docs.yaml

Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
name: Automatically build squid documentation
2+
3+
on:
4+
# push:
5+
# branches: [ "main" ]
6+
# pull_request:
7+
# branches: [ "main" ]
8+
workflow_dispatch:
9+
inputs:
10+
force:
11+
description: 'Force documentation rebuild even if no source changes'
12+
type: boolean
13+
required: false
14+
default: false
15+
schedule:
16+
- cron: '5 2 * * *'
17+
18+
jobs:
19+
gen-docs:
20+
runs-on: ubuntu-24.04
21+
22+
steps:
23+
- name: Checkout Docs
24+
uses: actions/checkout@v5
25+
with:
26+
token: ${{ secrets.PUSH_TOKEN }}
27+
28+
- name: Checkout Squid sources
29+
uses: actions/checkout@v5
30+
with:
31+
repository: squid-cache/squid
32+
path: squid
33+
34+
- name: cache last commit hash
35+
uses: actions/cache@v4
36+
with:
37+
path: last-squid-commit.txt
38+
key: last-commit-hash-${{ github.run_id }}
39+
restore-keys: last-commit-hash
40+
41+
- name: Check for squid source updates
42+
id: check_squid_updates
43+
env:
44+
FORCE_REBUILD: ${{ github.event.inputs.force }}
45+
run: |
46+
LAST_COMMIT_HASH=$(cat last-squid-commit.txt || echo "")
47+
cd squid
48+
CURRENT_COMMIT_HASH=$(git rev-parse --short HEAD)
49+
echo "current=$CURRENT_COMMIT_HASH" >> $GITHUB_OUTPUT
50+
if [ "$LAST_COMMIT_HASH" = "$CURRENT_COMMIT_HASH" -a "$FORCE_REBUILD" != "true" ]; then
51+
echo "marking as no no updates"
52+
echo "had_update=false" >> $GITHUB_OUTPUT
53+
else
54+
echo "had_update=true" >> $GITHUB_OUTPUT
55+
fi
56+
echo $CURRENT_COMMIT_HASH > ../last-squid-commit.txt
57+
58+
- name: Install prerequisite Linux packages
59+
if: steps.check_squid_updates.outputs.had_update == 'true'
60+
run: |
61+
# required for "apt-get build-dep" to work
62+
sudo sed --in-place -E 's/^(Types: deb)$/\1 deb-src/' /etc/apt/sources.list.d/ubuntu.sources
63+
sudo apt-get --quiet=2 update
64+
sudo apt-get --quiet=2 build-dep squid
65+
sudo apt-get --quiet=2 install libtool-bin doxygen graphviz pdf2svg
66+
67+
- name: Prepare squid sources
68+
working-directory: squid
69+
if: steps.check_squid_updates.outputs.had_update == 'true'
70+
run: |
71+
./bootstrap.sh
72+
. ./test-suite/buildtests/layer-02-maximus.opts
73+
eval ./configure $DISTCHECK_CONFIGURE_FLAGS
74+
75+
- name: Build programming guide
76+
if: steps.check_squid_updates.outputs.had_update == 'true'
77+
run: |
78+
doxygen doxyfile
79+
80+
- name: update self
81+
if: steps.check_squid_updates.outputs.had_update == 'true'
82+
uses: EndBug/add-and-commit@v9
83+
with:
84+
message: "automated update"
85+
add: "./docs"
86+
push: true

LICENSE

Lines changed: 372 additions & 674 deletions
Large diffs are not rendered by default.

README.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,4 @@
1-
# squid-lore.github.io
1+
# Squid Web Cache Programming guide
2+
3+
These documents are automatically generated from the
4+
[Squid Web Cache](https://www.squid-cache.org/) source code.

_config.yml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
title: "Squid Programming Guide"
2+
description: "Squid Web Cache programmers' guide"
3+
url: "https://programming-guide.squid-cache.org/"
4+
plugins:
5+
- jekyll-optional-front-matter
6+
- jekyll-relative-links
7+
- jekyll-titles-from-headings
8+
9+
# - jekyll-sitemap

docs/01__Main_8dox.html

Lines changed: 105 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,105 @@
1+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2+
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
3+
<head>
4+
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
5+
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
6+
<meta name="generator" content="Doxygen 1.9.8"/>
7+
<meta name="viewport" content="width=device-width, initial-scale=1"/>
8+
<title>Squid Web Cache: squid/doc/Programming-Guide/01_Main.dox File Reference</title>
9+
<link href="tabs.css" rel="stylesheet" type="text/css"/>
10+
<script type="text/javascript" src="jquery.js"></script>
11+
<script type="text/javascript" src="dynsections.js"></script>
12+
<link href="navtree.css" rel="stylesheet" type="text/css"/>
13+
<script type="text/javascript" src="resize.js"></script>
14+
<script type="text/javascript" src="navtreedata.js"></script>
15+
<script type="text/javascript" src="navtree.js"></script>
16+
<link href="search/search.css" rel="stylesheet" type="text/css"/>
17+
<script type="text/javascript" src="search/searchdata.js"></script>
18+
<script type="text/javascript" src="search/search.js"></script>
19+
<link href="doxygen.css" rel="stylesheet" type="text/css" />
20+
</head>
21+
<body>
22+
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
23+
<div id="titlearea">
24+
<table cellspacing="0" cellpadding="0">
25+
<tbody>
26+
<tr id="projectrow">
27+
<td id="projectalign">
28+
<div id="projectname">Squid Web Cache<span id="projectnumber">&#160;master</span>
29+
</div>
30+
</td>
31+
</tr>
32+
</tbody>
33+
</table>
34+
</div>
35+
<!-- end header part -->
36+
<!-- Generated by Doxygen 1.9.8 -->
37+
<script type="text/javascript">
38+
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
39+
var searchBox = new SearchBox("searchBox", "search/",'.html');
40+
/* @license-end */
41+
</script>
42+
<script type="text/javascript" src="menudata.js"></script>
43+
<script type="text/javascript" src="menu.js"></script>
44+
<script type="text/javascript">
45+
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
46+
$(function() {
47+
initMenu('',true,false,'search.php','Search');
48+
$(document).ready(function() { init_search(); });
49+
});
50+
/* @license-end */
51+
</script>
52+
<div id="main-nav"></div>
53+
</div><!-- top -->
54+
<div id="side-nav" class="ui-resizable side-nav-resizable">
55+
<div id="nav-tree">
56+
<div id="nav-tree-contents">
57+
<div id="nav-sync" class="sync"></div>
58+
</div>
59+
</div>
60+
<div id="splitbar" style="-moz-user-select:none;"
61+
class="ui-resizable-handle">
62+
</div>
63+
</div>
64+
<script type="text/javascript">
65+
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
66+
$(document).ready(function(){initNavTree('01__Main_8dox.html',''); initResizable(); });
67+
/* @license-end */
68+
</script>
69+
<div id="doc-content">
70+
<!-- window showing the filter options -->
71+
<div id="MSearchSelectWindow"
72+
onmouseover="return searchBox.OnSearchSelectShow()"
73+
onmouseout="return searchBox.OnSearchSelectHide()"
74+
onkeydown="return searchBox.OnSearchSelectKey(event)">
75+
</div>
76+
77+
<!-- iframe showing the search results (closed by default) -->
78+
<div id="MSearchResultsWindow">
79+
<div id="MSearchResults">
80+
<div class="SRPage">
81+
<div id="SRIndex">
82+
<div id="SRResults"></div>
83+
<div class="SRStatus" id="Loading">Loading...</div>
84+
<div class="SRStatus" id="Searching">Searching...</div>
85+
<div class="SRStatus" id="NoMatches">No Matches</div>
86+
</div>
87+
</div>
88+
</div>
89+
</div>
90+
91+
<div class="header">
92+
<div class="headertitle"><div class="title">squid/doc/Programming-Guide/01_Main.dox File Reference</div></div>
93+
</div><!--header-->
94+
<div class="contents">
95+
</div><!-- contents -->
96+
</div><!-- doc-content -->
97+
<!-- start footer part -->
98+
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
99+
<ul>
100+
<li class="navelem"><a class="el" href="01__Main_8dox.html">01_Main.dox</a></li>
101+
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8 </li>
102+
</ul>
103+
</div>
104+
</body>
105+
</html>
Lines changed: 105 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,105 @@
1+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2+
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
3+
<head>
4+
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
5+
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
6+
<meta name="generator" content="Doxygen 1.9.8"/>
7+
<meta name="viewport" content="width=device-width, initial-scale=1"/>
8+
<title>Squid Web Cache: squid/doc/Programming-Guide/02_CodingConventions.dox File Reference</title>
9+
<link href="tabs.css" rel="stylesheet" type="text/css"/>
10+
<script type="text/javascript" src="jquery.js"></script>
11+
<script type="text/javascript" src="dynsections.js"></script>
12+
<link href="navtree.css" rel="stylesheet" type="text/css"/>
13+
<script type="text/javascript" src="resize.js"></script>
14+
<script type="text/javascript" src="navtreedata.js"></script>
15+
<script type="text/javascript" src="navtree.js"></script>
16+
<link href="search/search.css" rel="stylesheet" type="text/css"/>
17+
<script type="text/javascript" src="search/searchdata.js"></script>
18+
<script type="text/javascript" src="search/search.js"></script>
19+
<link href="doxygen.css" rel="stylesheet" type="text/css" />
20+
</head>
21+
<body>
22+
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
23+
<div id="titlearea">
24+
<table cellspacing="0" cellpadding="0">
25+
<tbody>
26+
<tr id="projectrow">
27+
<td id="projectalign">
28+
<div id="projectname">Squid Web Cache<span id="projectnumber">&#160;master</span>
29+
</div>
30+
</td>
31+
</tr>
32+
</tbody>
33+
</table>
34+
</div>
35+
<!-- end header part -->
36+
<!-- Generated by Doxygen 1.9.8 -->
37+
<script type="text/javascript">
38+
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
39+
var searchBox = new SearchBox("searchBox", "search/",'.html');
40+
/* @license-end */
41+
</script>
42+
<script type="text/javascript" src="menudata.js"></script>
43+
<script type="text/javascript" src="menu.js"></script>
44+
<script type="text/javascript">
45+
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
46+
$(function() {
47+
initMenu('',true,false,'search.php','Search');
48+
$(document).ready(function() { init_search(); });
49+
});
50+
/* @license-end */
51+
</script>
52+
<div id="main-nav"></div>
53+
</div><!-- top -->
54+
<div id="side-nav" class="ui-resizable side-nav-resizable">
55+
<div id="nav-tree">
56+
<div id="nav-tree-contents">
57+
<div id="nav-sync" class="sync"></div>
58+
</div>
59+
</div>
60+
<div id="splitbar" style="-moz-user-select:none;"
61+
class="ui-resizable-handle">
62+
</div>
63+
</div>
64+
<script type="text/javascript">
65+
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
66+
$(document).ready(function(){initNavTree('02__CodingConventions_8dox.html',''); initResizable(); });
67+
/* @license-end */
68+
</script>
69+
<div id="doc-content">
70+
<!-- window showing the filter options -->
71+
<div id="MSearchSelectWindow"
72+
onmouseover="return searchBox.OnSearchSelectShow()"
73+
onmouseout="return searchBox.OnSearchSelectHide()"
74+
onkeydown="return searchBox.OnSearchSelectKey(event)">
75+
</div>
76+
77+
<!-- iframe showing the search results (closed by default) -->
78+
<div id="MSearchResultsWindow">
79+
<div id="MSearchResults">
80+
<div class="SRPage">
81+
<div id="SRIndex">
82+
<div id="SRResults"></div>
83+
<div class="SRStatus" id="Loading">Loading...</div>
84+
<div class="SRStatus" id="Searching">Searching...</div>
85+
<div class="SRStatus" id="NoMatches">No Matches</div>
86+
</div>
87+
</div>
88+
</div>
89+
</div>
90+
91+
<div class="header">
92+
<div class="headertitle"><div class="title">squid/doc/Programming-Guide/02_CodingConventions.dox File Reference</div></div>
93+
</div><!--header-->
94+
<div class="contents">
95+
</div><!-- contents -->
96+
</div><!-- doc-content -->
97+
<!-- start footer part -->
98+
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
99+
<ul>
100+
<li class="navelem"><a class="el" href="02__CodingConventions_8dox.html">02_CodingConventions.dox</a></li>
101+
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8 </li>
102+
</ul>
103+
</div>
104+
</body>
105+
</html>

0 commit comments

Comments
 (0)