In this example, I demonstrate how to create useful automation for KiCad hardware projects. The Pipeline can be seen running in
https://codeberg.org/ccoenen/Codeberg-KiCad-KiBot-Example
or in a modified form in
https://codeberg.org/ccoenen/Dustbuster-Communicator
---
The automation uses "KiBot", to generate common production files. KiBot can do much more, but I limited this demo to gerber files (used in PCB manufacturing) ibom (used to know which components to place where) and a schematic PDF. It is very likely that projects will want to heavily modify this part of the config anyway, so I only include a starting point.
This example _also_ demonstrates how to add the resulting files to the "packages" facility.
Co-authored-by: amenthes <opensource@amenthes.de>
Reviewed-on: https://codeberg.org/Codeberg-CI/examples/pulls/26
Reviewed-by: 6543 <6543@obermui.de>
Co-authored-by: Claudius Coenen <ccoenen@noreply.codeberg.org>
Co-committed-by: Claudius Coenen <ccoenen@noreply.codeberg.org>
Example to check [Standard ML](https://www.smlnj.org/sml.html) files recursively, in a given directory, to make sure they execute without problems.
Reviewed-on: https://codeberg.org/Codeberg-CI/examples/pulls/25
Reviewed-by: 6543 <6543@obermui.de>
Co-authored-by: Stefano Volpe <stefano.volpe2@studio.unibo.it>
Co-committed-by: Stefano Volpe <stefano.volpe2@studio.unibo.it>
I've been able to successfully make a NodeJS based CI solution to build pages for a static site using eleventy ([11ty.dev](https://11ty.dev)).
## Overview
This process will make use of the following
- Source repo to contain the source code
- Destination repo that will be used to serve the pages
- Codeberg CI (early access)
- Secrets within the CI
## How it works
Currently the `.Woodpecker.yml` file will live in your source codes repo, and have the build commands. Find more [here](https://codeberg.org/cjerrington/eleventy-base-blog-source/src/branch/main/.woodpecker.yml).
For the CI we will start by using the node image, setup the secrets, and build commands.
The use of secrets keeps your information secured and only accessed by the build system. This is beneficial for the email and access token. During the build, the pipeline will clone the source repo, then move into our commands.
We will use the default build dir by 11ty of `_site`. The pipeline will clone our destination repo as _site, then set the remote url for the push after we run our install and build. Once built, it will change directory to the build site and perform our commit and push.
## Accessing the site
On the remote repo we need the default repo to be named pages. This is also houw [Codeberg Pages](https://docs.codeberg.org/codeberg-pages/) setups up the access to what serves the pages we just built. You can follow their documentation on how to access your build site based on `username.codeberg.page`.
Co-authored-by: Clayton Errington <me@claytonerrington.com>
Co-authored-by: 6543 <6543@obermui.de>
Reviewed-on: https://codeberg.org/Codeberg-CI/examples/pulls/23
Reviewed-by: 6543 <6543@obermui.de>
Co-authored-by: Clayton Errington <cjerrington@noreply.codeberg.org>
Co-committed-by: Clayton Errington <cjerrington@noreply.codeberg.org>
An example of pipeline which builds and deploys an `mkdocs` site to codeberg pages.
This is tested and works in https://codeberg.org/openfindata/openfindata.
Co-authored-by: Laurent Savaëte <laurent@where.tf>
Reviewed-on: https://codeberg.org/Codeberg-CI/examples/pulls/24
Reviewed-by: 6543 <6543@obermui.de>
Co-authored-by: laurents <laurents@noreply.codeberg.org>
Co-committed-by: laurents <laurents@noreply.codeberg.org>
- fix: fatal: destination path '/tmp' already exists and is not an empty directory
- fix: .domains should be copied to repo folder not to hugo output folder
- feat: git commit message must not contain CI SKIP when pages branch is excluded from pipeline
Co-authored-by: Peter Prumbach <mail@peterprumbach.de>
Reviewed-on: https://codeberg.org/Codeberg-CI/examples/pulls/16
Co-authored-by: Peter Prumbach <ptpu@noreply.codeberg.org>
Co-committed-by: Peter Prumbach <ptpu@noreply.codeberg.org>
I forgot to add the Jekyll line to the README, now fixed. I also added a command substituion, so commit message has date and time.
Co-authored-by: Jan Wildeboer <jan@wildeboer.net>
Reviewed-on: https://codeberg.org/Codeberg-CI/examples/pulls/7
Co-authored-by: Jan Wildeboer <jwildeboer@noreply.codeberg.org>
Co-committed-by: Jan Wildeboer <jwildeboer@noreply.codeberg.org>
An example to publish pages built with Hugo on Codeberg Pages. Thanks to [jwildeboer](https://codeberg.org/jwildeboer) for the inspiration and the explanation.
Co-authored-by: Peter Prumbach <mail@peterprumbach.de>
Reviewed-on: https://codeberg.org/Codeberg-CI/examples/pulls/5
Co-authored-by: Peter Prumbach <peterprumbach@noreply.codeberg.org>
Co-committed-by: Peter Prumbach <peterprumbach@noreply.codeberg.org>
I added some examples to
- use the CI to build golang projects
- build and publish a 'latest' tagged docker container to DockerHub
- build and publish a version tagged docker container from a version tag to DockerHub
Co-authored-by: JohnWalkerx <johnwalkerx@mailbox.org>
Reviewed-on: https://codeberg.org/Codeberg-CI/examples/pulls/3
Co-authored-by: JohnWalkerx <johnwalkerx@noreply.codeberg.org>
Co-committed-by: JohnWalkerx <johnwalkerx@noreply.codeberg.org>