Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 0 additions & 14 deletions .copr/Makefile

This file was deleted.

110 changes: 110 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,110 @@
---
name: Build

on:
push:
branches: [master]
tags: ['*']
pull_request:
branches: [master]
workflow_dispatch:

jobs:
build:
runs-on: ubuntu-latest
permissions:
contents: read
strategy:
fail-fast: false
matrix:
shortcut: [el9, el10, el9s, el10s]
yarn-install: [true, false]
include:
- name: almalinux-9
shortcut: el9
container-name: almalinux9
- name: almalinux-10
shortcut: el10
container-name: almalinux10
- name: centos-stream-9
shortcut: el9s
container-name: el9stream
- name: centos-stream-10
shortcut: el10s
container-name: el10stream

name: Build on ${{ matrix.name }}${{ matrix.yarn-install && ' (online yarn)' || '' }}
container:
image: quay.io/ovirt/buildcontainer:${{ matrix.container-name }}

steps:
- name: Checkout sources
uses: actions/checkout@v7

- name: Mark repository as safe
run: git config --global --add safe.directory "$(pwd)"

- name: Install dependencies (offline build)
if: ${{ !matrix.yarn-install }}
run: dnf install -y autoconf automake gettext-devel git jq make rpm-build ovirt-engine-nodejs-modules

- name: Install dependencies (online build)
if: ${{ matrix.yarn-install }}
run: |
dnf install -y autoconf automake gettext-devel git jq make rpm-build nodejs
dnf config-manager --add-repo https://dl.yarnpkg.com/rpm/yarn.repo
dnf install -y --disablerepo='*' --enablerepo='yarn*' yarn

- name: Set up nodejs path
if: ${{ !matrix.yarn-install }}
run: echo "/usr/share/ovirt-engine-nodejs-modules/bin" >> $GITHUB_PATH

- name: Set build environment
run: |
TAG=$(git tag --points-at HEAD | head -1)
if [[ -n "$TAG" ]]; then
if [[ "$TAG" =~ -([0-9]+)$ ]]; then
echo "PACKAGE_RPM_RELEASE=${BASH_REMATCH[1]}" >> $GITHUB_ENV
else
echo "PACKAGE_RPM_RELEASE=1" >> $GITHUB_ENV
fi
else
echo "RELEASE_SUFFIX=.$(date --utc +%Y%m%d%H%M%S).git$(git rev-parse --short HEAD)" >> $GITHUB_ENV
fi

- name: Autogen
run: ./autogen.sh

- name: Configure
run: ./configure

- name: Run eslint
if: ${{ matrix.yarn-install }}
run: |
yarn install
yarn eslint

- name: Build RPM
run: make -j rpm
env:
OFFLINE_BUILD: ${{ matrix.yarn-install && '0' || '1' }}

- name: Collect artifacts
run: |
mkdir -p exported-artifacts
find tmp.repos -iname \*rpm -exec mv "{}" exported-artifacts/ \;
mv ./*tar.gz exported-artifacts/

- name: Upload artifacts
uses: actions/upload-artifact@v7
with:
name: rpm-${{ matrix.shortcut }}${{ matrix.yarn-install && '-yarn' || '' }}
path: exported-artifacts

publish-rpms:
permissions:
artifact-metadata: read
needs: build
if: ${{ github.event_name == 'push' || github.event_name == 'workflow_dispatch' }}
uses: ovirt/ovirt-workflows/.github/workflows/publish-rpms.yml@main
secrets: inherit
84 changes: 0 additions & 84 deletions .github/workflows/check.yaml

This file was deleted.

3 changes: 0 additions & 3 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -41,8 +41,5 @@ exported-artifacts/
rpmbuild/
mocker-*.cfg

# Not autogenerated!
\!.copr/Makefile

# autogenerated configure script
configure~
30 changes: 5 additions & 25 deletions DEVELOPERS.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
[![Copr build status](https://copr.fedorainfracloud.org/coprs/ovirt/ovirt-master-snapshot/package/ovirt-web-ui/status_image/last_build.png)](https://copr.fedorainfracloud.org/coprs/ovirt/ovirt-master-snapshot/package/ovirt-web-ui/)

# VM Portal - Developer information


Expand All @@ -25,17 +23,8 @@ Please report bugs and feature requests to the [GitHub issue tracker](https://gi


#### ovirt-engine packages
Install `ovirt-engine-nodejs-modules` from the [ovirt/ovirt-master-snapshot copr repo](https://copr.fedorainfracloud.org/coprs/ovirt/ovirt-master-snapshot/)
for your platform to use the same packages that will be used by CI to build the app.

For CentOS stream 9:

dnf copr enable -y ovirt/ovirt-master-snapshot centos-stream-9
dnf install -y ovirt-engine-nodejs-modules

For CentOS stream 10:
Install `ovirt-engine-nodejs-modules` to use the same packages that will be used by CI to build the app.

dnf copr enable -y ovirt/ovirt-master-snapshot centos-stream-10
dnf install -y ovirt-engine-nodejs-modules

After installing, the package may be for development or building. It provides `yarn` itself
Expand Down Expand Up @@ -169,17 +158,9 @@ There are a number of different ways to build the RPM for the project:
source /usr/share/ovirt-engine-nodejs-modules/setup-env.sh
make rpm

2. Manual **offline** build with `automation/build.sh`:

./automation/build.sh

3. Manual **online** build with `automation/build.sh`:

OFFLINE_BUILD=0 ./automation/build.sh

4. Each pull request push will automatically have RPMs built as part of the GitHub action
checks "run CI on PRs" job "test_el8_offline". The generated artifact zip file will be
accessible on the action run's summary page.
2. Each push to master and each pull request will automatically have RPMs built as part of the
GitHub Actions "Build" workflow. The generated artifact zip file will be accessible on the
action run's summary page.


### RPM Installation
Expand All @@ -191,8 +172,7 @@ existing **ovirt-engine.ear**.

You can access the application at: `https://[ENGINE_FQDN]/ovirt-engine/web-ui`

The latest master branch RPM can be found in the [ovirt/ovirt-master-snapshot
copr repository](https://copr.fedorainfracloud.org/coprs/ovirt/ovirt-master-snapshot).
The latest master branch RPM can be found on [resources.ovirt.org](https://resources.ovirt.org/pub/ovirt-master-snapshot/).


## Browser Developer Tools
Expand Down
2 changes: 0 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
[![Copr build status](https://copr.fedorainfracloud.org/coprs/ovirt/ovirt-master-snapshot/package/ovirt-web-ui/status_image/last_build.png)](https://copr.fedorainfracloud.org/coprs/ovirt/ovirt-master-snapshot/package/ovirt-web-ui/)

# VM Portal for oVirt
VM Portal is a modern lightweight UI for oVirt that allows oVirt users to create, start, stop, and use virtual machines.

Expand Down
75 changes: 0 additions & 75 deletions automation/build.sh

This file was deleted.

10 changes: 5 additions & 5 deletions configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -20,12 +20,15 @@ define([VERSION_MAJOR], [1])
define([VERSION_MINOR], [9])
define([VERSION_FIX], [5])
define([VERSION_NUMBER], VERSION_MAJOR[.]VERSION_MINOR[.]VERSION_FIX)
define([VERSION_RELEASE], [0])

AC_INIT([ovirt-web-ui], VERSION_NUMBER, [gshereme@redhat.com])
PACKAGE_RPM_VERSION="VERSION_NUMBER"
PACKAGE_RPM_RELEASE="VERSION_RELEASE"
AC_SUBST([PACKAGE_RPM_VERSION])

AC_ARG_VAR([PACKAGE_RPM_RELEASE],
[RPM release field (default: 0.master for development, release number for release builds)])
AS_IF([test -z "$PACKAGE_RPM_RELEASE"],
[PACKAGE_RPM_RELEASE="0.master"])
AC_SUBST([PACKAGE_RPM_RELEASE])

AM_INIT_AUTOMAKE([-Wall -Werror foreign -Wno-portability tar-pax])
Expand All @@ -35,9 +38,6 @@ AC_CHECK_PROGS([RPMBUILD], [rpmbuild])

dnl TODO: Fail if rpmbuild is not present

PACKAGE_RPM_SUFFIX=${PACKAGE_RPM_SUFFIX:-"%{?release_suffix}"}
AC_ARG_VAR([PACKAGE_RPM_SUFFIX], [suffix to use on the rpm's release string])

AC_CONFIG_FILES([
Makefile
ovirt-web-ui.spec
Expand Down
2 changes: 1 addition & 1 deletion ovirt-web-ui.spec.in
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@

Name: ovirt-web-ui
Version: @PACKAGE_RPM_VERSION@
Release: @PACKAGE_RPM_RELEASE@@PACKAGE_RPM_SUFFIX@%{?checkout}%{?dist}
Release: @PACKAGE_RPM_RELEASE@%{?release_suffix}%{?dist}
Summary: VM Portal for %{product}
License: ASL 2.0
URL: https://github.com/oVirt/ovirt-web-ui
Expand Down