Skip to content

Commit 7256821

Browse files
author
Fotis Koutoulakis
committed
Update github actions readme file.
The original readme.md file is no longer corresponding to the current implementation of CI we have, so this is bringing it more in line with the current state.
1 parent 47539fc commit 7256821

File tree

1 file changed

+22
-56
lines changed

1 file changed

+22
-56
lines changed

.github/workflows/README.md

Lines changed: 22 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -1,56 +1,22 @@
1-
# CBMC packages
2-
3-
This project builds installation packages for the tip of the develop
4-
branch for MacOS, Windows, and Ubuntu.
5-
6-
There exist installation packages for the latest stable releases of
7-
CBMC on MacOS and Ubuntu.
8-
9-
On MacOS:
10-
* brew install cbmc
11-
12-
On Ubuntu:
13-
* sudo apt-get install software-properties-common
14-
* sudo add-apt-repository ppa:mt-debian/cbmc-backports
15-
* sudo apt-get update
16-
* sudo apt-get install cbmc
17-
18-
This project uses GitHub Actions to build installation packages for
19-
the tip of the develop branch for MacOS, Windows, and Ubuntu each time
20-
new commits is added to develop. The packages reside on GitHub as
21-
artifacts that can be listed using the GitHub Actions API.
22-
23-
A separate project implements a web page hosted on GitHub Pages that makes
24-
it easy to find the installation package for the tip of develop.
25-
26-
The stable installation packages describe above for MacOS and Ubuntu
27-
install into the local operating system's equivalent of
28-
/usr/local/bin.
29-
This project builds two kinds of packages:
30-
* cbmc installs into the equvalent of /usr/local/bin
31-
* cbmc-latest installs into the equivalent of /usr/local/cbmc-latest/bin,
32-
and makes it possible to have two copies of cbmc --- a stable release
33-
and a tip of develop --- side-by-side on the same machine.
34-
35-
For each operatin system:
36-
* The MacOS package is just a tar file of a directory containing the
37-
binaries. The directory should be unpacked and placed in the search
38-
path. Using Homebrew, "brew install cbmc" will install the latest
39-
stable release. These tar files are intended only to distribute the
40-
development versions between stable releases (Homebrew repository
41-
updates of the stable versions are quick).
42-
43-
* The Windows package is an Microsoft Installer (msi) for Windows 10
44-
with Visual Studio 2019. It can be installed by double-clicking on the
45-
installer or runnin `msexec /i <filename>`.
46-
47-
* The Ubuntu package is a Debian package that can be installed with
48-
`dpkg -i <filename>`. There are packages for Ubuntu 18 and Ubuntu 16.
49-
These packages are intended to distribute the development versions
50-
between stable releases, but also to produce the stable packages uploaded
51-
to a Debian or Ubuntu PPA.
52-
53-
The file packages.yaml defines the workflow for GitHub Actions to build the
54-
packages. Each package is defined by a job that runs in its own
55-
container. The subdirectories contain files and data needed to build
56-
each of the packages.
1+
# CBMC CI infrastructure
2+
3+
This folder contains implementation and configuration files for
4+
our CI infrastructure on top of Github Actions. Aside from CI,
5+
it also contains packaging and automated release scripts.
6+
7+
The files in this folder correspond to:
8+
9+
* `build-and-test-Xen.yaml` -> Build Xen using CBMC tools.
10+
* `csmith.yaml` -> Run 10 randomly generated CSmith tests per Pull Request.
11+
* `doxygen-check.yaml` -> Build project doxygen documentation per Pull Request.
12+
* `pull-request-check-cpplint.sh` -> Script that's called per Pull Request to execute
13+
`cpplint` over changes.
14+
* `pull-request-check-clang-format.sh` -> Script that's called per Pull Request
15+
to execute `clang-format` over changes.
16+
* `pull-request-checks.yaml` -> Configuration file for the Github Actions CI jobs
17+
for the various platforms.
18+
* `regular-release.yaml` -> Configuration file for performing an automated release
19+
every time a tag of a specific form (`cbmc-x.y.z`) is pushed.
20+
* `release-packages.yaml` -> Configuration file for performing building of build
21+
artifacts that are attached to release when it's being made. Invoked when a
22+
regular release is performed.

0 commit comments

Comments
 (0)