github: Re-add release management
This commit is contained in:
parent
1091bb5eec
commit
8ab4a0d2aa
24
.github/workflows/build.yml
vendored
24
.github/workflows/build.yml
vendored
@ -23,3 +23,27 @@ jobs:
|
|||||||
name: build
|
name: build
|
||||||
path: |
|
path: |
|
||||||
image.iso
|
image.iso
|
||||||
|
- name: Draft Release notes
|
||||||
|
if: startsWith(github.ref, 'refs/tags/v')
|
||||||
|
run: bash util/generate-release-notes.sh > notes.md
|
||||||
|
- name: Create Release
|
||||||
|
if: startsWith(github.ref, 'refs/tags/v')
|
||||||
|
uses: actions/create-release@v1
|
||||||
|
id: create_release
|
||||||
|
env:
|
||||||
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
with:
|
||||||
|
tag_name: ${{ github.ref }}
|
||||||
|
release_name: ToaruOS ${{ github.ref }}
|
||||||
|
body_path: ./notes.md
|
||||||
|
draft: true
|
||||||
|
- name: Upload Release Image
|
||||||
|
if: startsWith(github.ref, 'refs/tags/v')
|
||||||
|
uses: actions/upload-release-asset@v1
|
||||||
|
env:
|
||||||
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
with:
|
||||||
|
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
||||||
|
asset_path: ./image.iso
|
||||||
|
asset_name: image.iso
|
||||||
|
asset_content_type: application/x-iso9660-image
|
||||||
|
39
util/generate-release-notes.sh
Normal file
39
util/generate-release-notes.sh
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
VERSION=$(git describe --exact-match --tags)
|
||||||
|
LAST=$(git describe --abbrev=0 --tags ${VERSION}^)
|
||||||
|
CHANGELOG=$(git log --pretty=format:%s ${LAST}..HEAD | grep ':' | sed -re 's/(.*)\:/- \`\1\`\:/' | sort)
|
||||||
|
cat <<NOTES
|
||||||
|
# ToaruOS ${VERSION}
|
||||||
|
|
||||||
|
Put a screenshot here.
|
||||||
|
|
||||||
|
## What's New in ${VERSION}?
|
||||||
|
|
||||||
|
Describe the release here.
|
||||||
|
|
||||||
|
## What is ToaruOS?
|
||||||
|
|
||||||
|
ToaruOS is a hobbyist, educational operating system for x86-64 PCs, focused primarily on use in virtual machines. It provides a Unix-like environment, complete with a graphical desktop interface, shared libraries, feature-rich terminal emulator, and support for running Python 3.6, GCC, and several other ports. The core of ToaruOS, provided by the CD images in this release, is built completely from scratch. The bootloader, kernel, drivers, C standard library, and userspace applications are all original software created by the authors, as are the graphical assets.
|
||||||
|
|
||||||
|
## Who wrote ToaruOS?
|
||||||
|
|
||||||
|
ToaruOS is primarily written by a single maintainer, with several contributions from others. A complete list of contributors is available from [AUTHORS](https://github.com/klange/toaruos/blob/master/AUTHORS).
|
||||||
|
|
||||||
|
## Running ToaruOS
|
||||||
|
|
||||||
|
It is recommended that you run ToaruOS in a virtual machine / emulator, for maximum compatibility. ToaruOS's driver support is limited, and running on real "bare metal", while possible, does not provide the most complete experience of the OS's capabilities except on very particular hardware. ToaruOS is regularly tested in VirtualBox, QEMU, and VMWare Player, and can be successfully booted (with poor performance) in Bochs. ToaruOS is intended to run from a live CD, though it is possible to install to a hard disk. Additional details on running ToaruOS in different virtual machines is available [from the README](https://github.com/klange/toaruos#running-toaruos).
|
||||||
|
|
||||||
|
## Release Files
|
||||||
|
|
||||||
|
\`image.iso\` is the standard build of ToaruOS, built the Github Actions CI workflow. It uses ToaruOS's native bootloaders and should work in most virtual machines using BIOS.
|
||||||
|
|
||||||
|
When provided in a release, \`toaruos-grub.iso\` is an alternative CD with GRUB as a bootloader. If you are attempting to run ToaruOS on real hardware, this is generally preferred.
|
||||||
|
|
||||||
|
## Changelog
|
||||||
|
${CHANGELOG}
|
||||||
|
|
||||||
|
## Known Issues
|
||||||
|
- SMP support is _experimental_ and highly unstable.
|
||||||
|
- Several utilities, libc functions, and hardware drivers are missing functionality.
|
||||||
|
- There are many known security issues with ToaruOS. You should not use ToaruOS in a production environment - it is a hobby project, not a production operating system. If you find security issues in ToaruOS and would like to responsibly report them, please file a regular issue report here on GitHub.
|
||||||
|
NOTES
|
Loading…
Reference in New Issue
Block a user