Skip to content
Open
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
2 changes: 1 addition & 1 deletion dist/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ OBS_BIN_SCRIPTS := obs_productconvert
OBS_SBIN_SCRIPTS := obs_admin obs_serverstatus obsscheduler obsworker obsstoragesetup obs-setup
SYSTEMD_TARGET_FILES := obs-api-support
SYSTEMD_SERVICE_FILES := obs-clockwork obs-delayedjob-queue-project_log_rotate obs-delayedjob-queue-consistency_check obs-delayedjob-queue-default obs-delayedjob-queue-releasetracking obs-delayedjob-queue-issuetracking obs-delayedjob-queue-mailers obs-delayedjob-queue-staging obs-delayedjob-queue-scm obs-sphinx obsdeltastore obsdispatcher obsdodup obswarden obssrcserver obsrepserver obspublisher obssigner obsservice obsservicedispatch obssourcepublish obsgetbinariesproxy obsscheduler obsworker obsstoragesetup obsapisetup obsnotifyforward obsredis
SYSTEMD_SERVICE_FILES_WITHOUT_LINK := obs-delayedjob-queue-quick@
SYSTEMD_SERVICE_FILES_WITHOUT_LINK := obs-delayedjob-queue-quick@ obs-delayedjob-queue-quick_user@ obs-delayedjob-queue-slow_user@ obs-delayedjob-queue-internal@

UNITDIR=/usr/lib/systemd/system/

Expand Down
3 changes: 3 additions & 0 deletions dist/obs-server.spec
Original file line number Diff line number Diff line change
Expand Up @@ -992,6 +992,9 @@ usermod -a -G docker obsservicerun
%{_unitdir}/obs-delayedjob-queue-mailers.service
%{_unitdir}/obs-delayedjob-queue-project_log_rotate.service
%{_unitdir}/obs-delayedjob-queue-quick@.service
%{_unitdir}/obs-delayedjob-queue-quick_user@.service
%{_unitdir}/obs-delayedjob-queue-slow_user@.service
%{_unitdir}/obs-delayedjob-queue-internal@.service
%{_unitdir}/obs-delayedjob-queue-releasetracking.service
%{_unitdir}/obs-delayedjob-queue-staging.service
%{_unitdir}/obs-delayedjob-queue-scm.service
Expand Down
2 changes: 1 addition & 1 deletion dist/systemd/obs-api-support.target
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[Unit]
Description = Open Build Service API Support Daemons
Wants = obs-clockwork.service obs-delayedjob-queue-consistency_check.service obs-delayedjob-queue-default.service obs-delayedjob-queue-issuetracking.service obs-delayedjob-queue-mailers.service obs-delayedjob-queue-project_log_rotate.service obs-delayedjob-queue-quick@0.service obs-delayedjob-queue-quick@1.service obs-delayedjob-queue-quick@2.service obs-delayedjob-queue-releasetracking.service obs-delayedjob-queue-staging.service obs-delayedjob-queue-scm.service obs-sphinx.service
Wants = obs-clockwork.service obs-delayedjob-queue-consistency_check.service obs-delayedjob-queue-default.service obs-delayedjob-queue-issuetracking.service obs-delayedjob-queue-mailers.service obs-delayedjob-queue-project_log_rotate.service obs-delayedjob-queue-quick@0.service obs-delayedjob-queue-quick@1.service obs-delayedjob-queue-quick@2.service obs-delayedjob-queue-quick_user@0.service obs-delayedjob-queue-slow_user@0.service obs-delayedjob-queue-internal@0.service obs-delayedjob-queue-releasetracking.service obs-delayedjob-queue-staging.service obs-delayedjob-queue-scm.service obs-sphinx.service
After = network.target
AllowIsolate = yes

Expand Down
18 changes: 18 additions & 0 deletions dist/systemd/obs-delayedjob-queue-internal@.service
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
[Unit]
Description = Open Build Service DelayedJob Queue Instance: internal
BindsTo = obs-api-support.target
After = mariadb.service obsapisetup.service

[Service]
Environment = "RAILS_ENV=production"
User = @@APACHE_USER@@
Group = @@APACHE_GROUP@@
WorkingDirectory = @@OBS_API_PREFIX@@
ExecStart = @@OBS_BUNDLE_BIN@@ exec script/delayed_job.api.rb --queue=internal start -i %i
ExecStop = @@OBS_BUNDLE_BIN@@ exec script/delayed_job.api.rb --queue=internal stop -i %i
Type = forking
PIDFile = @@OBS_API_PREFIX@@/tmp/pids/delayed_job.%i.pid
Restart=on-failure

[Install]
WantedBy = obs-api-support.target
18 changes: 18 additions & 0 deletions dist/systemd/obs-delayedjob-queue-quick_user@.service
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
[Unit]
Description = Open Build Service DelayedJob Queue Instance: quick_user
BindsTo = obs-api-support.target
After = mariadb.service obsapisetup.service

[Service]
Environment = "RAILS_ENV=production"
User = @@APACHE_USER@@
Group = @@APACHE_GROUP@@
WorkingDirectory = @@OBS_API_PREFIX@@
ExecStart = @@OBS_BUNDLE_BIN@@ exec script/delayed_job.api.rb --queue=quick_user start -i %i
ExecStop = @@OBS_BUNDLE_BIN@@ exec script/delayed_job.api.rb --queue=quick_user stop -i %i
Type = forking
PIDFile = @@OBS_API_PREFIX@@/tmp/pids/delayed_job.%i.pid
Restart=on-failure

[Install]
WantedBy = obs-api-support.target
18 changes: 18 additions & 0 deletions dist/systemd/obs-delayedjob-queue-slow_user@.service
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
[Unit]
Description = Open Build Service DelayedJob Queue Instance: slow_user
BindsTo = obs-api-support.target
After = mariadb.service obsapisetup.service

[Service]
Environment = "RAILS_ENV=production"
User = @@APACHE_USER@@
Group = @@APACHE_GROUP@@
WorkingDirectory = @@OBS_API_PREFIX@@
ExecStart = @@OBS_BUNDLE_BIN@@ exec script/delayed_job.api.rb --queue=slow_user start -i %i
ExecStop = @@OBS_BUNDLE_BIN@@ exec script/delayed_job.api.rb --queue=slow_user stop -i %i
Type = forking
PIDFile = @@OBS_API_PREFIX@@/tmp/pids/delayed_job.%i.pid
Restart=on-failure

[Install]
WantedBy = obs-api-support.target
2 changes: 1 addition & 1 deletion src/api/app/jobs/bs_request_action_webui_infos_job.rb
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
# triggered by RequestController#request_create when a BsRequest is created

class BsRequestActionWebuiInfosJob < ApplicationJob
queue_as :quick
queue_as :quick_user

def perform(bs_request_action, tarlimit: nil)
# We don't need to do an access check as this is only for warming the cache in the backend
Expand Down
2 changes: 1 addition & 1 deletion src/api/app/jobs/configuration_write_to_backend_job.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
class ConfigurationWriteToBackendJob < ApplicationJob
queue_as :quick
queue_as :internal

def perform(configuration_id)
Configuration.find(configuration_id).write_to_backend
Expand Down
2 changes: 1 addition & 1 deletion src/api/app/jobs/create_local_package_version_job.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
class CreateLocalPackageVersionJob < ApplicationJob
queue_as :quick
queue_as :slow_user

def perform(package_id, version)
PackageVersionLocal.create(version: version, package: Package.find(package_id))
Expand Down
2 changes: 1 addition & 1 deletion src/api/app/jobs/daily_user_activity_measurement_job.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
class DailyUserActivityMeasurementJob < ApplicationJob
queue_as :quick
queue_as :internal

def perform
return unless CONFIG['amqp_options']
Expand Down
2 changes: 1 addition & 1 deletion src/api/app/jobs/delete_from_sphinx_job.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
class DeleteFromSphinxJob < ApplicationJob
queue_as :quick
queue_as :slow_user

def perform(id, klass)
delete_from_sphinx(id: id, klass: klass)
Expand Down
2 changes: 1 addition & 1 deletion src/api/app/jobs/issue_tracker_write_to_backend_job.rb
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
require 'builder'

class IssueTrackerWriteToBackendJob < ApplicationJob
queue_as :quick
queue_as :internal

def perform
logger.debug 'Write issue tracker information to backend...'
Expand Down
2 changes: 1 addition & 1 deletion src/api/app/jobs/measurements_job.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
class MeasurementsJob < ApplicationJob
queue_as :quick
queue_as :internal

def perform
return unless CONFIG['amqp_options']
Expand Down
2 changes: 1 addition & 1 deletion src/api/app/jobs/populate_to_sphinx_job.rb
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ class PopulateToSphinxJob < ApplicationJob
project: Project
}.freeze

queue_as :quick
queue_as :slow_user

# When populating the indices asynchronously we don't have the instance at hand, so we need the id and the model name to load the instance and feed it to Thinking Sphinx.
# Sometimes we want to trigger a Sphinx update when associated data changes, when that happens, `model name` and `reference` differ, and we need to supply both.
Expand Down
2 changes: 1 addition & 1 deletion src/api/app/jobs/project_do_project_copy_job.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
class ProjectDoProjectCopyJob < ApplicationJob
queue_as :quick
queue_as :slow_user

attr_accessor :project, :params

Expand Down
2 changes: 1 addition & 1 deletion src/api/app/jobs/project_do_project_release_job.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
class ProjectDoProjectReleaseJob < ApplicationJob
queue_as :quick
queue_as :slow_user

def perform(project_id, params)
Project.find(project_id).do_project_release(params)
Expand Down
2 changes: 1 addition & 1 deletion src/api/app/jobs/status_history_rescaler_job.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
class StatusHistoryRescalerJob < ApplicationJob
queue_as :quick
queue_as :slow_user

# this is called from a delayed job triggered by clockwork
def perform
Expand Down
2 changes: 1 addition & 1 deletion src/api/app/jobs/sync_local_package_version_job.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
class SyncLocalPackageVersionJob < ApplicationJob
queue_as :quick
queue_as :slow_user

def perform(project_name, package_name: nil)
project = Project.find_by_name(project_name)
Expand Down
2 changes: 1 addition & 1 deletion src/api/app/jobs/sync_upstream_package_version_job.rb
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Job to sync (create/update/delete) upstream versions for all packages
class SyncUpstreamPackageVersionJob < ApplicationJob
queue_as :quick
queue_as :slow_user

def perform(project_name: nil)
if project_name.present?
Expand Down
2 changes: 1 addition & 1 deletion src/api/app/jobs/update_packages_if_dirty_job.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
class UpdatePackagesIfDirtyJob < ApplicationJob
queue_as :quick
queue_as :quick_user

self.priority = 10

Expand Down
2 changes: 1 addition & 1 deletion src/api/app/jobs/worker_measurements_job.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
class WorkerMeasurementsJob < ApplicationJob
queue_as :quick
queue_as :internal

def perform
return unless CONFIG['amqp_options']
Expand Down
Binary file added src/api/vendor/cache/ffi-1.17.3-arm64-darwin.gem
Binary file not shown.
Binary file not shown.