mirror of
https://github.com/reactos/Release_Engineering.git
synced 2024-11-23 03:49:43 +00:00
Add Dockerfile and github docker workflow pushing to ghcr.io (#1)
This commit is contained in:
parent
c621dfd21d
commit
d7f680803b
24
.github/workflows/docker.yml
vendored
Normal file
24
.github/workflows/docker.yml
vendored
Normal file
@ -0,0 +1,24 @@
|
||||
name: Docker
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
|
||||
jobs:
|
||||
docker:
|
||||
runs-on: ubuntu-22.04
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Build and Push Docker Image
|
||||
uses: mr-smithers-excellent/docker-build-push@v6
|
||||
with:
|
||||
image: rosbe-unix-release-engineering
|
||||
dockerfile: Docker/Dockerfile
|
||||
registry: ghcr.io
|
||||
addLatest: true
|
||||
username: ${{ github.actor }}
|
||||
password: ${{ secrets.GITHUB_TOKEN }}
|
39
Docker/Dockerfile
Normal file
39
Docker/Dockerfile
Normal file
@ -0,0 +1,39 @@
|
||||
FROM ubuntu:24.04
|
||||
LABEL org.opencontainers.image.authors="Mark Jansen <mark.jansen@reactos.org>"
|
||||
LABEL Description="RosBE-Unix on Ubuntu with Release Engineering scripts"
|
||||
|
||||
WORKDIR /work
|
||||
|
||||
# The settings `DEBIAN_FRONTEND="noninteractive" TZ="Europe/Amsterdam"` are for `texinfo`
|
||||
RUN apt-get update -y \
|
||||
&& apt-get upgrade -y \
|
||||
&& DEBIAN_FRONTEND="noninteractive" TZ="Europe/Amsterdam" apt-get install -y \
|
||||
bison \
|
||||
build-essential \
|
||||
flex \
|
||||
git \
|
||||
nano \
|
||||
p7zip-full \
|
||||
pkg-config \
|
||||
python-is-python3 \
|
||||
python3 \
|
||||
texinfo \
|
||||
wget \
|
||||
zip \
|
||||
zlib1g-dev \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
RUN wget https://downloads.sourceforge.net/reactos/RosBE-Unix-2.2.1.tar.bz2 \
|
||||
&& tar -xjf RosBE-Unix-2.2.1.tar.bz2 \
|
||||
&& rm RosBE-Unix-2.2.1.tar.bz2 \
|
||||
&& cd RosBE-Unix-2.2.1 \
|
||||
&& echo yes | bash RosBE-Builder.sh /usr/local/RosBE \
|
||||
&& cd .. \
|
||||
&& rm -rf RosBE-Unix-2.2.1
|
||||
|
||||
RUN git clone https://github.com/reactos/Release_Engineering \
|
||||
|
||||
&& mv Release_Engineering/Release_* /usr/local/bin \
|
||||
&& rm -rf Release_Engineering
|
||||
|
||||
CMD ["/usr/local/RosBE/RosBE.sh", "/work"]
|
31
Docker/README.md
Normal file
31
Docker/README.md
Normal file
@ -0,0 +1,31 @@
|
||||
# RosBE-Unix on Ubuntu with Release Engineering scripts
|
||||
|
||||
Normally this docker container can be used from ghcr.io
|
||||
|
||||
Below steps outline the process of running it locally.
|
||||
|
||||
## Building the container
|
||||
|
||||
- Create an image named `reactos-base`:
|
||||
- `docker build --pull --rm -f "Dockerfile" -t reactos-base "."`
|
||||
- Create a container named `reactos-builder` from the `reactos-base` image
|
||||
- `docker run --name reactos-builder -it reactos-base`
|
||||
- `exit` to close the container
|
||||
|
||||
## Running the container
|
||||
|
||||
- Run the `reactos-builder`:
|
||||
- `docker start reactos-builder`
|
||||
- Show all docker containers:
|
||||
- `docker ps`
|
||||
- Attach to the running `reactos-builder`:
|
||||
- `docker attach 03e11af06800` (where `03e11af06800` is the `CONTAINER ID` from the running container)
|
||||
|
||||
## Building a release
|
||||
|
||||
```bash
|
||||
Release_Configure
|
||||
# Answer the prompts
|
||||
Release_ISOs
|
||||
Release_Source
|
||||
```
|
Loading…
Reference in New Issue
Block a user