This commit is contained in:
parent
f2cf4d01a9
commit
6d2cbde816
4 changed files with 36 additions and 91 deletions
32
Jenkinsfile
vendored
32
Jenkinsfile
vendored
|
@ -40,15 +40,9 @@ pipeline
|
||||||
{
|
{
|
||||||
agent
|
agent
|
||||||
{
|
{
|
||||||
dockerfile
|
dockerfile { filename 'packaging/RHEL9.Dockerfile' }
|
||||||
{
|
|
||||||
filename 'packaging/RHEL9.Dockerfile'
|
|
||||||
}
|
|
||||||
}
|
|
||||||
environment
|
|
||||||
{
|
|
||||||
DOTNET_CLI_HOME = "/tmp/.dotnet"
|
|
||||||
}
|
}
|
||||||
|
environment { DOTNET_CLI_HOME = "/tmp/.dotnet" }
|
||||||
when
|
when
|
||||||
{
|
{
|
||||||
expression
|
expression
|
||||||
|
@ -58,25 +52,19 @@ pipeline
|
||||||
}
|
}
|
||||||
steps
|
steps
|
||||||
{
|
{
|
||||||
sh 'rpmbuild -bb packaging/supportchild-nightly.spec --define "_topdir $PWD/.rpmbuild-el9"'
|
sh 'rpmbuild -bb packaging/supportchild.spec --define "_topdir $PWD/.rpmbuild-el9" --define "dev_build true"'
|
||||||
sh 'mkdir linux-x64'
|
sh 'mkdir linux-x64'
|
||||||
sh 'cp .rpmbuild-el9/RPMS/x86_64/supportchild-nightly-*.el9.x86_64.rpm linux-x64/'
|
sh 'cp .rpmbuild-el9/RPMS/x86_64/supportchild-dev-*.el9.x86_64.rpm linux-x64/'
|
||||||
archiveArtifacts(artifacts: 'linux-x64/supportchild-nightly-*.el9.x86_64.rpm', caseSensitive: true)
|
archiveArtifacts(artifacts: 'linux-x64/supportchild-dev-*.el9.x86_64.rpm', caseSensitive: true)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
stage('RHEL8')
|
stage('RHEL8')
|
||||||
{
|
{
|
||||||
agent
|
agent
|
||||||
{
|
{
|
||||||
dockerfile
|
dockerfile { filename 'packaging/RHEL8.Dockerfile' }
|
||||||
{
|
|
||||||
filename 'packaging/RHEL8.Dockerfile'
|
|
||||||
}
|
|
||||||
}
|
|
||||||
environment
|
|
||||||
{
|
|
||||||
DOTNET_CLI_HOME = "/tmp/.dotnet"
|
|
||||||
}
|
}
|
||||||
|
environment { DOTNET_CLI_HOME = "/tmp/.dotnet" }
|
||||||
when
|
when
|
||||||
{
|
{
|
||||||
expression
|
expression
|
||||||
|
@ -86,10 +74,10 @@ pipeline
|
||||||
}
|
}
|
||||||
steps
|
steps
|
||||||
{
|
{
|
||||||
sh 'rpmbuild -bb packaging/supportchild-nightly.spec --define "_topdir $PWD/.rpmbuild-el8"'
|
sh 'rpmbuild -bb packaging/supportchild.spec --define "_topdir $PWD/.rpmbuild-el8" --define "dev_build true"'
|
||||||
sh 'mkdir linux-x64'
|
sh 'mkdir linux-x64'
|
||||||
sh 'cp .rpmbuild-el8/RPMS/x86_64/supportchild-nightly-*.el8.x86_64.rpm linux-x64/'
|
sh 'cp .rpmbuild-el8/RPMS/x86_64/supportchild-dev-*.el8.x86_64.rpm linux-x64/'
|
||||||
archiveArtifacts(artifacts: 'linux-x64/supportchild-nightly-*.el8.x86_64.rpm', caseSensitive: true)
|
archiveArtifacts(artifacts: 'linux-x64/supportchild-dev-*.el8.x86_64.rpm', caseSensitive: true)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,58 +0,0 @@
|
||||||
%global debug_package %{nil}
|
|
||||||
%global repo_root %{_topdir}/..
|
|
||||||
|
|
||||||
Summary: A support ticket Discord bot
|
|
||||||
Name: supportchild-nightly
|
|
||||||
Version: %(sed -ne '/Version/{s/.*<Version>\(.*\)<\/Version>.*/\1/p;q;}' < SupportChild.csproj)
|
|
||||||
Release: %(date "+%%Y%%m%%d%%H%%M%%S")%{?dist}
|
|
||||||
License: GPLv3
|
|
||||||
URL: https://toastielab.dev/toastie-stuff/SupportChild
|
|
||||||
Source: https://toastielab.dev/toastie-stuff/SupportChild/archive/main.zip
|
|
||||||
Packager: Toastie_t0ast
|
|
||||||
|
|
||||||
BuildRequires: systemd-rpm-macros
|
|
||||||
Requires: dotnet-runtime-9.0
|
|
||||||
%{?systemd_requires}
|
|
||||||
|
|
||||||
%description
|
|
||||||
A support ticket Discord bot. Uses a MySQL database for storage of ticket
|
|
||||||
information. Creates formatted HTML ticket transcripts when tickets are closed.
|
|
||||||
|
|
||||||
%prep
|
|
||||||
%setup -T -c
|
|
||||||
|
|
||||||
%build
|
|
||||||
dotnet publish %{repo_root}/SupportChild.csproj -p:PublishSingleFile=true -r linux-x64 -c Release --self-contained false --output %{_builddir}/out
|
|
||||||
|
|
||||||
%install
|
|
||||||
%{__install} -d %{buildroot}/usr/bin
|
|
||||||
%{__install} %{_builddir}/out/supportchild %{buildroot}/usr/bin/supportchild
|
|
||||||
# rpmbuild post-processing using the strip command breaks dotnet binaries, remove the executable bit to avoid it
|
|
||||||
chmod 644 %{buildroot}/usr/bin/supportchild
|
|
||||||
|
|
||||||
%{__install} -d %{buildroot}/usr/lib/systemd/system
|
|
||||||
%{__install} %{repo_root}/packaging/supportchild.service %{buildroot}/usr/lib/systemd/system/
|
|
||||||
|
|
||||||
%{__install} -d %{buildroot}/etc/supportchild/
|
|
||||||
%{__install} %{repo_root}/default_config.yml %{buildroot}/etc/supportchild/config.yml
|
|
||||||
|
|
||||||
%pre
|
|
||||||
getent group supportchild > /dev/null || groupadd supportchild
|
|
||||||
getent passwd supportchild > /dev/null || useradd -r -s /sbin/nologin -g supportchild supportchild
|
|
||||||
|
|
||||||
%post
|
|
||||||
%systemd_post supportchild.service
|
|
||||||
|
|
||||||
%preun
|
|
||||||
%systemd_preun supportchild.service
|
|
||||||
|
|
||||||
%postun
|
|
||||||
%systemd_postun_with_restart supportchild.service
|
|
||||||
if [[ "$1" == "0" ]]; then
|
|
||||||
getent passwd supportchild > /dev/null && userdel supportchild
|
|
||||||
fi
|
|
||||||
|
|
||||||
%files
|
|
||||||
%attr(0755,root,root) /usr/bin/supportchild
|
|
||||||
%attr(0644,root,root) /usr/lib/systemd/system/supportchild.service
|
|
||||||
%config %attr(0600, supportchild, supportchild) /etc/supportchild/config.yml
|
|
|
@ -6,7 +6,7 @@ Wants=network.target
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
User=supportchild
|
User=supportchild
|
||||||
ExecStart=/usr/bin/supportchild --config /etc/supportchild/config.yml
|
ExecStart=/usr/bin/supportchild --config /etc/supportchild/config.yml --transcripts /var/lib/supportboi/transcripts
|
||||||
Restart=no
|
Restart=no
|
||||||
Type=exec
|
Type=exec
|
||||||
|
|
||||||
|
|
|
@ -1,14 +1,22 @@
|
||||||
%global debug_package %{nil}
|
%global debug_package %{nil}
|
||||||
%global repo_root %{_topdir}/..
|
%global repo_root %{_topdir}/..
|
||||||
|
%global base_version %(echo "$(sed -ne '/Version/{s/.*<Version>\\(.*\\)<\\/Version>.*/\\1/p;q;}' < SupportChild.csproj)")
|
||||||
|
|
||||||
Summary: A support ticket Discord bot
|
%if %{defined dev_build}
|
||||||
|
Name: supportchild-dev
|
||||||
|
Summary: A support ticket Discord bot (dev build)
|
||||||
|
Version: %{base_version}~%(date "+%%Y%%m%%d%%H%%M%%S")git%(git rev-parse --short HEAD)
|
||||||
|
Source: https://toastielab.dev/toastie-stuff/SupportChild/archive/%(git rev-parse HEAD).zip
|
||||||
|
%else
|
||||||
Name: supportchild
|
Name: supportchild
|
||||||
Version: %(sed -ne '/Version/{s/.*<Version>\(.*\)<\/Version>.*/\1/p;q;}' < SupportChild.csproj)
|
Summary: A support ticket Discord bot
|
||||||
|
Version: %{base_version}
|
||||||
|
Source: https://toastielab.dev/toastie-stuff/SupportChild/archive/%{base_version}.zip
|
||||||
|
%endif
|
||||||
Release: 1%{?dist}
|
Release: 1%{?dist}
|
||||||
License: GPLv3
|
License: GPLv3
|
||||||
URL: https://toastielab.dev/toastie-stuff/SupportChild
|
URL: https://toastielab.dev/toastie-stuff/SupportChild
|
||||||
Source: https://toastielab.dev/toastie-stuff/SupportChild/archive/main.zip
|
Packager: KarlofDuty
|
||||||
Packager: Toastie_t0ast
|
|
||||||
|
|
||||||
BuildRequires: systemd-rpm-macros
|
BuildRequires: systemd-rpm-macros
|
||||||
Requires: dotnet-runtime-9.0
|
Requires: dotnet-runtime-9.0
|
||||||
|
@ -25,20 +33,25 @@ information. Creates formatted HTML ticket transcripts when tickets are closed.
|
||||||
dotnet publish %{repo_root}/SupportChild.csproj -p:PublishSingleFile=true -r linux-x64 -c Release --self-contained false --output %{_builddir}/out
|
dotnet publish %{repo_root}/SupportChild.csproj -p:PublishSingleFile=true -r linux-x64 -c Release --self-contained false --output %{_builddir}/out
|
||||||
|
|
||||||
%install
|
%install
|
||||||
|
if [[ -d %{_rpmdir}/%{_arch} ]]; then
|
||||||
|
%{__rm} %{_rpmdir}/%{_arch}/*
|
||||||
|
fi
|
||||||
|
|
||||||
%{__install} -d %{buildroot}/usr/bin
|
%{__install} -d %{buildroot}/usr/bin
|
||||||
%{__install} %{_builddir}/out/supportchild %{buildroot}/usr/bin/supportchild
|
|
||||||
# rpmbuild post-processing using the strip command breaks dotnet binaries, remove the executable bit to avoid it
|
# rpmbuild post-processing using the strip command breaks dotnet binaries, remove the executable bit to avoid it
|
||||||
chmod 644 %{buildroot}/usr/bin/supportchild
|
%{__install} -m 644 %{_builddir}/out/supportchild %{buildroot}/usr/bin/supportchild
|
||||||
|
|
||||||
%{__install} -d %{buildroot}/usr/lib/systemd/system
|
%{__install} -d %{buildroot}/usr/lib/systemd/system
|
||||||
%{__install} %{repo_root}/packaging/supportchild.service %{buildroot}/usr/lib/systemd/system/
|
%{__install} -m 644 %{repo_root}/packaging/supportchild.service %{buildroot}/usr/lib/systemd/system/
|
||||||
|
|
||||||
%{__install} -d %{buildroot}/etc/supportchild/
|
%{__install} -d %{buildroot}/etc/supportchild/
|
||||||
%{__install} %{repo_root}/default_config.yml %{buildroot}/etc/supportchild/config.yml
|
%{__install} -m 600 %{repo_root}/default_config.yml %{buildroot}/etc/supportchild/config.yml
|
||||||
|
|
||||||
|
%{__install} -d %{buildroot}/var/lib/supportchild/transcripts
|
||||||
|
|
||||||
%pre
|
%pre
|
||||||
getent group supportchild > /dev/null || groupadd supportchild
|
getent group supportchild > /dev/null || groupadd supportchild
|
||||||
getent passwd supportchild > /dev/null || useradd -r -s /sbin/nologin -g supportchild supportchild
|
getent passwd supportchild > /dev/null || useradd -r -m -d /var/lib/supportchild -s /sbin/nologin -g supportchild supportchild
|
||||||
|
|
||||||
%post
|
%post
|
||||||
%systemd_post supportchild.service
|
%systemd_post supportchild.service
|
||||||
|
@ -55,4 +68,6 @@ fi
|
||||||
%files
|
%files
|
||||||
%attr(0755,root,root) /usr/bin/supportchild
|
%attr(0755,root,root) /usr/bin/supportchild
|
||||||
%attr(0644,root,root) /usr/lib/systemd/system/supportchild.service
|
%attr(0644,root,root) /usr/lib/systemd/system/supportchild.service
|
||||||
%config %attr(0600, supportchild, supportchild) /etc/supportchild/config.yml
|
%config %attr(0600, supportchild, supportchild) /etc/supportchild/config.yml
|
||||||
|
%dir %attr(0700, supportchild, supportchild) /var/lib/supportchild
|
||||||
|
%dir %attr(0755, supportchild, supportchild) /var/lib/supportchild/transcripts
|
Loading…
Add table
Reference in a new issue