Rebuild For MSVSphere #2

Merged
tigro merged 16 commits from :i9 into i9 3 months ago
Collaborator

Rebuild openlitespeed for MSVSphere 9.4

Rebuild openlitespeed for MSVSphere 9.4
ebasov added 1 commit 3 months ago
ebasov added 1 commit 3 months ago
ebasov added 1 commit 3 months ago
ebasov added 1 commit 3 months ago
ebasov added 1 commit 3 months ago
tigro approved these changes 3 months ago
Version: 1.8.2
Release: 1%{?dist}
Summary: Open source HTTP server developed and copyrighted by LiteSpeed Technologies.
License: GNU General Public License v3.0
tigro commented 3 months ago
Collaborator

Тут правильное значение GPLv3+

Тут правильное значение GPLv3+
Release: 1%{?dist}
Summary: Open source HTTP server developed and copyrighted by LiteSpeed Technologies.
License: GNU General Public License v3.0
Url: https://github.com/litespeedtech/%{name}/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
tigro commented 3 months ago
Collaborator

Это URL должен быть в поле Source0, чтобы его можно было скачать при помощи spectool -g. И использовать нужно тот тарбол, что скачается из git'а

Это URL должен быть в поле Source0, чтобы его можно было скачать при помощи spectool -g. И использовать нужно тот тарбол, что скачается из git'а
License: GNU General Public License v3.0
Url: https://github.com/litespeedtech/%{name}/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
Source0: %{name}.tar.xz
tigro commented 3 months ago
Collaborator

Заменить на URL выше и тарбол с гита залить в s3

Заменить на URL выше и тарбол с гита залить в s3
%description
OpenLiteSpeed is a high-performance, lightweight, open source HTTP server developed and copyrighted by LiteSpeed Technologies.
%package -n %{name}-lua
tigro commented 3 months ago
Collaborator

Вот в таких случаях используется %package lua - это означает дописать lua к %{name} пакета. А -n используется, когда пакет не содержит %{name} что и было раньше. В %description ниже всё тоже самое. И для других пакетов. в %files тоже самое.

Вот в таких случаях используется %package lua - это означает дописать lua к %{name} пакета. А -n используется, когда пакет не содержит %{name} что и было раньше. В %description ниже всё тоже самое. И для других пакетов. в %files тоже самое.
%package -n %{name}-lua
Summary: Lua
Requires: openlitespeed = %{version}-%{release}
tigro commented 3 months ago
Collaborator

тут правильно будет

Requires: %{name} = %{version}-%{release}

Ну и ниже также.

тут правильно будет ``` Requires: %{name} = %{version}-%{release} ``` Ну и ниже также.
Mod Security for openlitespeed webserver.
%prep
%autosetup -n %{name} -b1
tigro commented 3 months ago
Collaborator

Проверить путь в архиве относительн тарбола из git'а. Кажется, что -n %{name} будет не нужно.

Проверить путь в архиве относительн тарбола из git'а. Кажется, что -n %{name} будет не нужно.
cp -pr dist/admin/conf/admin_config_ssl.conf.in %{buildroot}/usr/lsws/admin/conf/admin_config.conf
sed -i -e "s:%ADMIN_PORT%:7080:g" %{buildroot}/usr/lsws/admin/conf/admin_config.conf
sed -i -e "s:%SSL_HOSTNAME%:webadmin:g" %{buildroot}/usr/lsws/admin/conf/admin_config.conf
install -m 755 -d %{buildroot}/etc/init.d
tigro commented 3 months ago
Collaborator

Я нашёл в пакете сервис для системд: /usr/lsws/admin/misc/lshttpd.service

Давай его как раз скопируем в правильное место, а init-скрипт удалим.

Нужны будут ещё макросы для systemd. Можешь посмотреть, как сделано в пакете nginx допустим.

Я нашёл в пакете сервис для системд: /usr/lsws/admin/misc/lshttpd.service Давай его как раз скопируем в правильное место, а init-скрипт удалим. Нужны будут ещё макросы для systemd. Можешь посмотреть, как сделано в пакете nginx допустим.
chmod 755 %{buildroot}/usr/lsws/admin/fcgi-bin/admin_php
chmod 755 %{buildroot}/usr/lsws/fcgi-bin/lsphp5
chmod 755 %{buildroot}/usr/lsws/admin/fcgi-bin/admin_php
rm %{buildroot}/usr/lsws/fcgi-bin/lsphp
tigro commented 3 months ago
Collaborator

Давай всегда использовать rm -f. Часто бывает, что файла почему-то нет и стопорится сборка.

Давай всегда использовать rm -f. Часто бывает, что файла почему-то нет и стопорится сборка.
usermod -G lsadm,nobody lsadm >/dev/null 2>&1
exit 0
%preun
tigro commented 3 months ago
Collaborator

Давай всё-таки %postun. И ещё добавь остановку сервиса.

Давай всё-таки %postun. И ещё добавь остановку сервиса.
SSL_HOSTNAME='webadmin'
COMMNAME='openlitespeed.host'
SSL_COUNTRY=US
SSL_STATE="New Jersey"
tigro commented 3 months ago
Collaborator

Интересно, а почему тут два раза SSL_STATE и SSL_COUNTRY. Ошиблись что ли.

Интересно, а почему тут два раза SSL_STATE и SSL_COUNTRY. Ошиблись что ли.
localityName = Virtual
organizationName = LiteSpeedCommunity
organizationalUnitName = Testing
stateOrProvinceName = NJ
tigro commented 3 months ago
Collaborator

Надо поискать, что писать тут для RU/Moscow. Может и вообще пустое поле или не должно существовать. Но не NJ точно.

Надо поискать, что писать тут для RU/Moscow. Может и вообще пустое поле или не должно существовать. Но не NJ точно.
chown lsadm.lsadm %{sslkey}; chmod 400 %{sslkey};
ln -s /usr/lsws/fcgi-bin/lsphp5 /usr/lsws/fcgi-bin/lsphp
/usr/lsws/admin/misc/rc-inst.sh > /dev/null 2>&1
tigro commented 3 months ago
Collaborator

Это от initscripts. Не нужное.

Это от initscripts. Не нужное.
echo "To start the openlitespeed server, run the command: systemctl restart lsws"
%files
tigro commented 3 months ago
Collaborator

Добавь тут (только тут):

%license LICENSE
%doc README.md
Добавь тут (только тут): ``` %license LICENSE %doc README.md ```
%files
/etc/init.d/lsws
tigro commented 3 months ago
Collaborator

Это будет не нужно, так как будем использовать systemd.

Это будет не нужно, так как будем использовать systemd.
%files
/etc/init.d/lsws
%dir /usr/lsws
tigro commented 3 months ago
Collaborator

Как же этот /usr/lsws глаза режет. Давай вот что сделаем

В самом начале файла определим

%global _lsws_dir %{_prefix}/lsws

И будем использовать %{_lsws_dir} вместо /usr/lsws

И вообще хорошо бы во всём spec это заменить. Ну хотя бы где просто пути, без sed'ов и if'ов.

Как же этот /usr/lsws глаза режет. Давай вот что сделаем В самом начале файла определим ``` %global _lsws_dir %{_prefix}/lsws ``` И будем использовать %{_lsws_dir} вместо /usr/lsws И вообще хорошо бы во всём spec это заменить. Ну хотя бы где просто пути, без sed'ов и if'ов.
ebasov added 1 commit 3 months ago
ebasov added 1 commit 3 months ago
ebasov added 1 commit 3 months ago
ebasov added 1 commit 3 months ago
ebasov added 1 commit 3 months ago
ebasov added 1 commit 3 months ago
tigro reviewed 3 months ago
sed -i -e "s:%ADMIN_PORT%:7080:g" %{buildroot}%{_lsws_dir}/admin/conf/admin_config.conf
sed -i -e "s:%SSL_HOSTNAME%:webadmin:g" %{buildroot}%{_lsws_dir}/admin/conf/admin_config.conf
install -m 755 -d %{buildroot}/%{_sysconfdir}/systemd/system
cp %{buildroot}%{_lsws_dir}/admin/misc/lshttpd.service %{buildroot}%{_sysconfdir}/systemd/system
tigro commented 3 months ago
Collaborator

А вот это лучше инсталлировать в /usr/lib/systemd/system и макрос у неё %{_unitdir}

А вот это лучше инсталлировать в /usr/lib/systemd/system и макрос у неё %{_unitdir}
tigro reviewed 3 months ago
%files
/etc/systemd/system/lshttpd.service
tigro commented 3 months ago
Collaborator

Тут будет %{_unitdir}/lshttpd.service

Тут будет %{_unitdir}/lshttpd.service
tigro reviewed 3 months ago
%{_lsws_dir}/modules/mod_lua.so
%changelog
* Wed Sep 18 2024 Eduard Basov <ebasov@msvsphere-os.ru> - 1.8.2
tigro commented 3 months ago
Collaborator

Забыл релиз - должно быть 1.8.2-1 а не 1.8.2.

Забыл релиз - должно быть 1.8.2-1 а не 1.8.2.
ebasov added 1 commit 3 months ago
ebasov added 1 commit 3 months ago
ebasov added 1 commit 3 months ago
ebasov added 1 commit 3 months ago
ebasov added 1 commit 3 months ago
tigro merged commit c0ecdfdf60 into i9 3 months ago
tigro referenced this issue from a commit 3 months ago

Reviewers

tigro approved these changes 3 months ago
The pull request has been merged as c0ecdfdf60.
Sign in to join this conversation.
No reviewers
No Label
No Milestone
No project
No Assignees
2 Participants
Notifications
Due Date

No due date set.

Dependencies

No dependencies set.

Reference: rpms/openlitespeed#2
Loading…
There is no content yet.