add mkdocs page scaffolding
This commit is contained in:
parent
a1f761172c
commit
d984b19ac9
5 changed files with 113 additions and 0 deletions
20
.woodpecker/netlify.yml
Normal file
20
.woodpecker/netlify.yml
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
when:
|
||||||
|
event: push
|
||||||
|
branch: main
|
||||||
|
|
||||||
|
pipeline:
|
||||||
|
build:
|
||||||
|
image: python:3.9
|
||||||
|
commands:
|
||||||
|
- pip3 install -r requirements.txt
|
||||||
|
- mkdocs build --site-dir publish
|
||||||
|
|
||||||
|
deploy:
|
||||||
|
image: node:18
|
||||||
|
environment:
|
||||||
|
- NETLIFY_SITE_ID=a41006ac-4870-484f-9fef-2d45e9546837
|
||||||
|
secrets:
|
||||||
|
- NETLIFY_AUTH_TOKEN
|
||||||
|
commands:
|
||||||
|
- npm install -D netlify-cli
|
||||||
|
- npx netlify deploy --site=$NETLIFY_SITE_ID --dir=publish --prod
|
19
docs/assets/get-it-on-codeberg.svg
Normal file
19
docs/assets/get-it-on-codeberg.svg
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="svg-badge" height="168" width="564" viewBox="0 0 564 168">
|
||||||
|
<defs>
|
||||||
|
<linearGradient xlink:href="#a" id="b" gradientUnits="userSpaceOnUse" x1="42519.285" y1="-7078.789" x2="42575.336" y2="-6966.931"/>
|
||||||
|
<linearGradient id="a">
|
||||||
|
<stop offset="0" stop-color="#fff" stop-opacity="0"/>
|
||||||
|
<stop offset=".495" stop-color="#71c2ff"/>
|
||||||
|
<stop offset="1" stop-color="#39aaff"/>
|
||||||
|
</linearGradient>
|
||||||
|
</defs>
|
||||||
|
<rect id="rect" ry="15.111" y="2" x="2" height="164" width="560" fill="none" stroke="#a6a6a6" stroke-width="4" stroke-linejoin="round" paint-order="fill stroke markers" style="color: rgb(255, 255, 255); fill: rgb(255, 255, 255);"/>
|
||||||
|
<text style="line-height:0%;-inkscape-font-specification:'Inter';marker:none" x="203.16" y="-85.813" transform="matrix(1.0087 0 0 .99138 -19.194 133.848)" color="#000" font-weight="400" font-size="11.814" font-family="Inter, 'DejaVu Sans', sans-serif" letter-spacing="0" word-spacing="0" overflow="visible" fill="#2185d0" stroke-width=".985">
|
||||||
|
<tspan id="claim-svg" style="line-height:1;-inkscape-font-specification:'Inter'" x="203.16" y="-85.813" font-size="33.596">GET IT ON</tspan>
|
||||||
|
</text>
|
||||||
|
<path aria-label="Codeberg" d="M214.654 71.02c-8.453 0-15.047 2.79-19.803 8.369-4.803 5.577-7.215 12.943-7.215 22.096 0 7.034 1.764 13.158 5.281 18.372 4.862 7.275 12.274 10.912 22.2 10.912 6.907 0 12.922-2.516 18.049-7.548l-4.718-7.185c-4.57 2.85-8.512 4.275-11.844 4.275-5.069 0-9.112-1.91-12.12-5.729-2.847-3.638-4.271-8.004-4.271-13.097 0-5.76 1.211-10.428 3.613-14.005 2.773-4.183 6.694-6.274 11.747-6.274 3.65 0 7.684 1.574 12.11 4.728l4.734-7.546c-5.925-4.91-11.844-7.368-17.763-7.368zm167.7 0l-11.657 6.456v52.201h9.441l.925-4.091c2.843 3.455 6.844 5.183 12.03 5.183 5.238 0 9.638-1.548 13.224-4.64 4.56-4.061 6.85-10.033 6.85-17.914 0-6.122-1.547-11.033-4.634-14.732-3.523-4.184-8.38-6.275-14.612-6.275-2.226 0-4.266.418-6.105 1.274-2.348 1.09-4.176 2.607-5.462 4.546zm-62.745.183l-11.674 6.367v13.186c-2.895-2.304-6.471-3.455-10.722-3.455-4.93 0-9.16 1.606-12.667 4.82-4.692 4.304-7.056 10.427-7.056 18.37 0 5.638 1.466 10.247 4.362 13.824 3.454 4.304 8.486 6.456 15.085 6.456 2.343 0 4.622-.517 6.838-1.547 2.232-1.03 3.83-2.334 4.825-3.909l1.663 4.364h9.346zm-65.647 16.098c-6.057 0-10.956 1.878-14.718 5.636-4.139 4.123-6.206 9.52-6.206 16.188 0 5.88 1.855 10.854 5.553 14.916 4.134 4.486 9.272 6.73 15.371 6.73 5.255 0 9.84-1.759 13.783-5.275 4.75-4.183 7.125-9.641 7.125-16.371 0-5.758-1.599-10.638-4.808-14.641-3.826-4.79-9.192-7.183-16.1-7.183zm91.746 0c-5.988 0-10.914 1.94-14.819 5.82-4.314 4.245-6.477 9.609-6.477 16.096 0 6.61 1.923 11.792 5.744 15.552 4.017 4 9.596 6.002 16.758 6.002 6.647 0 12.205-1.94 16.641-5.822l-2.964-6.092c-4.368 2.426-8.56 3.637-12.572 3.637-2.842 0-5.302-.908-7.401-2.728-2.051-1.88-3.194-4.214-3.417-7.001h28.852v-4.183c0-6.003-1.6-10.885-4.809-14.643-3.693-4.427-8.884-6.638-15.536-6.638zm92.543 0c-5.978 0-10.909 1.94-14.803 5.82-4.326 4.245-6.472 9.609-6.472 16.096 0 6.61 1.907 11.792 5.733 15.552 4 4 9.585 6.002 16.753 6.002 6.658 0 12.205-1.94 16.652-5.822l-2.954-6.092c-4.389 2.426-8.587 3.637-12.588 3.637-2.837 0-5.308-.908-7.406-2.728-2.04-1.88-3.183-4.214-3.427-7.001h28.878v-4.183c0-6.003-1.605-10.885-4.814-14.643-3.709-4.427-8.879-6.638-15.552-6.638zm45.163 0c-1.838 0-3.672.485-5.462 1.455-1.727.908-2.901 2-3.512 3.272l-1.11-3.635h-9.9v41.286h11.477V100.03c.978-2.12 2.524-3.18 4.623-3.18 2.28 0 4.442 1.15 6.466 3.454l9.814-5.274c-2.71-5.154-6.844-7.73-12.396-7.73zm30.121 0c-4.883 0-9.107 1.606-12.683 4.82-4.691 4.304-7.024 10.427-7.024 18.37 0 5.577 1.435 10.186 4.336 13.824 3.4 4.304 8.188 6.456 14.351 6.456 5.064 0 8.974-2.032 11.759-6.094 0 9.094-3.342 13.642-10 13.642-4.697 0-8.921-1.213-12.683-3.638l-2.954 5.82c4.856 4.365 10.637 6.549 17.295 6.549 6.413 0 11.354-1.85 14.813-5.549 3.502-3.758 5.266-9.125 5.255-16.098v-37.01h-8.974l-.914 4.455c0-.604-.893-1.515-2.688-2.728-2.716-1.879-6.005-2.82-9.889-2.82zm-167.923 8.094c5.553 0 8.496 2.97 8.794 8.912h-17.869c.675-5.942 3.704-8.912 9.075-8.912zm92.554 0c5.547 0 8.474 2.97 8.788 8.912h-17.858c.674-5.942 3.703-8.912 9.07-8.912zm-184.204.089c5.989 0 8.98 4.547 8.98 13.64 0 8.732-2.991 13.097-8.98 13.097-5.982 0-8.98-4.365-8.98-13.096 0-9.094 2.998-13.641 8.98-13.641zm45.748 0c2.04 0 3.794.67 5.282 2.002 1.53 1.272 2.518 2.908 2.943 4.909v11.55c-.318 2.243-1.408 4.243-3.315 6.002-1.913 1.698-3.985 2.547-6.2 2.547-5.989 0-8.98-4.516-8.98-13.55 0-4.123.924-7.396 2.778-9.82 1.85-2.426 4.347-3.64 7.492-3.64zm216.312 0c1.982 0 3.762.7 5.377 2.093 1.669 1.335 2.625 2.94 2.875 4.818v10.46c0 2.607-.935 4.878-2.785 6.82-1.854 1.878-4.043 2.819-6.572 2.819-6.047 0-9.075-4.516-9.075-13.55 0-4.123.924-7.396 2.779-9.82 1.849-2.426 4.325-3.64 7.401-3.64zm-124.322.094c2.832 0 5.048 1.211 6.663 3.637 1.594 2.425 2.407 5.728 2.407 9.912 0 4.244-.866 7.58-2.598 10.006-1.727 2.424-4.07 3.637-7.019 3.637-2.295 0-4.31-.76-6.03-2.274-1.68-1.518-2.604-3.396-2.769-5.637v-9.916c0-2.606.893-4.818 2.673-6.637 1.854-1.817 4.075-2.728 6.673-2.728z" style="line-height:1.25;-inkscape-font-specification:'Tajawal Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal" font-weight="700" font-size="17.899" font-family="Tajawal" letter-spacing="-.285" word-spacing="0" fill="#2185d0"/>
|
||||||
|
<g paint-order="stroke markers fill">
|
||||||
|
<path style="font-variation-settings:normal" d="M42519.285-7078.79a.76.568 0 00-.738.675l33.586 125.888a87.182 87.182 0 0039.381-33.763l-71.565-92.52a.76.568 0 00-.664-.28z" transform="matrix(.75692 0 0 .74393 -32088.397 5317.32)" opacity=".5" fill="url(#b)"/>
|
||||||
|
<path d="M93.742 20.95A65.99 64.857 0 0028 85.807a65.99 64.857 0 0010.076 34.447l55.019-69.909a1.03.756 0 011.785 0l55.022 69.912a65.99 64.857 0 0010.078-34.45A65.99 64.857 0 0093.99 20.95a65.99 64.857 0 00-.248 0z" fill="#2185d0"/>
|
||||||
|
</g>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 5.9 KiB |
51
docs/index.md
Normal file
51
docs/index.md
Normal file
|
@ -0,0 +1,51 @@
|
||||||
|
# IPAM
|
||||||
|
|
||||||
|
IPAM is a cli based [IP Address Management](https://en.wikipedia.org/wiki/IP_address_management) built with [Go](https://go.dev/) using [Cobra](https://cobra.dev/) and [Viper](https://github.com/spf13/viper) with optional [PowerDNS](https://www.powerdns.com/auth.html) API integration.
|
||||||
|
|
||||||
|
|
||||||
|
<img src="assets/get-it-on-codeberg.svg" alt="Download IPAM on Codeberg" title="Download IPAM on Codeberg" style="height: 5em;" />
|
||||||
|
|
||||||
|
## Features
|
||||||
|
|
||||||
|
`ipam` is a cli based IPAM. It supports:
|
||||||
|
|
||||||
|
- Adding, listing, viewing and deleting subnets
|
||||||
|
- Adding, viewing and deleting single IP addresses with FQDNs
|
||||||
|
- automatic addition and deletion of forward and reverse records
|
||||||
|
- import and export configuration
|
||||||
|
|
||||||
|
## But why?
|
||||||
|
|
||||||
|
In my career as a Network Engineer I worked at a company that developed their own internal CMDB that was set up as a cli application. I really liked the ease of use and the way you could quickly do stuff.
|
||||||
|
|
||||||
|
So I sat down and started my first Go project and started developing this ipam.
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
`ipam` is built as a cli app. Once you installed `ipam` and added it to your `$PATH`, you can
|
||||||
|
|
||||||
|
- add prefixes with `ipam subnet add 192.168.0.0/24 fancy-subnet-name`
|
||||||
|
- add IPs to those prefixes with `ipam ip add 192.168.0.1 fqdn.example.com`
|
||||||
|
- add the next free IP in a prefix with `ipam ip add 192.168.0.0/24 fqdn2.example.com`
|
||||||
|
- much more (see `ipam (command) --help` for examples)
|
||||||
|
|
||||||
|
If PowerDNS integration is enabled in `$HOME/.ipam/ipam.yml`, forward and reverse DNS records are automatically managed when you add or delete IP addresses with hostnames.
|
||||||
|
|
||||||
|
## CLI Example
|
||||||
|
<p>
|
||||||
|
<script async id="asciicast-576401" src="https://asciinema.org/a/576401.js"></script>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
## Contributing
|
||||||
|
|
||||||
|
The main development is happening at [https://codeberg.org/lauralani/ipam](https://codeberg.org/lauralani/ipam).
|
||||||
|
|
||||||
|
If you find a bug or would like a feature to get added you can [create a new issue](https://codeberg.org/lauralani/ipam/issues) or collaborate by forking the repository and [create a new pull request](https://codeberg.org/lauralani/ipam/pulls).
|
||||||
|
|
||||||
|
If you have any questions please also feel free to create a new Issue!
|
||||||
|
|
||||||
|
## License
|
||||||
|
|
||||||
|
Copyright 2023 Laura Kalb <dev (at) lauka.net>
|
||||||
|
|
||||||
|
This program is Free Software: You can use, study share and improve it at your will. Specifically you can redistribute and/or modify it under the terms of the [GNU General Public License](https://www.gnu.org/licenses/gpl.html) as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
|
22
mkdocs.yml
Normal file
22
mkdocs.yml
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
site_name: IPAM Documentation
|
||||||
|
site_url: https://ipam.lauka.net/
|
||||||
|
nav:
|
||||||
|
- Home: index.md
|
||||||
|
- About: about.md
|
||||||
|
theme:
|
||||||
|
name: material
|
||||||
|
palette:
|
||||||
|
primary: purple
|
||||||
|
accent: blue
|
||||||
|
scheme: slate
|
||||||
|
features:
|
||||||
|
- navigation.instant
|
||||||
|
- navigation.tracking
|
||||||
|
- navigation.tabs
|
||||||
|
- navigation.tabs.sticky
|
||||||
|
- toc.follow
|
||||||
|
- toc.integrate
|
||||||
|
icon:
|
||||||
|
repo: fontawesome/brands/git-alt
|
||||||
|
repo_url: https://codeberg.org/lauralani/ipam
|
||||||
|
repo_name: lauralani/ipam
|
1
requirements.txt
Normal file
1
requirements.txt
Normal file
|
@ -0,0 +1 @@
|
||||||
|
mkdocs-material
|
Loading…
Reference in a new issue