diff --git a/app/services/software_update_check_service.rb b/app/services/software_update_check_service.rb index 2bb2b6efed..8c95ca546e 100644 --- a/app/services/software_update_check_service.rb +++ b/app/services/software_update_check_service.rb @@ -34,6 +34,7 @@ class SoftwareUpdateCheckService < BaseService if ENV.fetch('UPDATE_CHECK_SOURCE', 'kmyblue') == 'kmyblue' @version = "#{Mastodon::Version.kmyblue_major}.#{Mastodon::Version.kmyblue_minor}" @version += '-lts' if Setting.check_lts_version_only + @version += '-dev' if Mastodon::Version.dev? else @version = Mastodon::Version.to_s.split('+')[0] end diff --git a/lib/mastodon/version.rb b/lib/mastodon/version.rb index 007c768cdd..7ca337cd3d 100644 --- a/lib/mastodon/version.rb +++ b/lib/mastodon/version.rb @@ -5,7 +5,7 @@ module Mastodon module_function def kmyblue_major - 10 + 11 end def kmyblue_minor @@ -13,7 +13,9 @@ module Mastodon end def kmyblue_flag - nil # 'LTS' + # 'LTS' + 'dev' + # nil end def major @@ -80,6 +82,14 @@ module Mastodon end end + def lts? + kmyblue_flag == 'LTS' + end + + def dev? + kmyblue_flag == 'dev' + end + def repository ENV.fetch('GITHUB_REPOSITORY', 'kmycode/mastodon') end diff --git a/spec/services/software_update_check_service_spec.rb b/spec/services/software_update_check_service_spec.rb index 7cc99bb09c..846cbdb709 100644 --- a/spec/services/software_update_check_service_spec.rb +++ b/spec/services/software_update_check_service_spec.rb @@ -6,7 +6,7 @@ RSpec.describe SoftwareUpdateCheckService, type: :service do subject { described_class.new } shared_examples 'when the feature is enabled' do - let(:full_update_check_url) { "#{update_check_url}?version=#{Mastodon::Version.kmyblue_major}.#{Mastodon::Version.kmyblue_minor}-lts" } + let(:full_update_check_url) { "#{update_check_url}?version=#{Mastodon::Version.kmyblue_major}.#{Mastodon::Version.kmyblue_minor}-lts#{Mastodon::Version.dev? ? '-dev' : ''}" } let(:devops_role) { Fabricate(:user_role, name: 'DevOps', permissions: UserRole::FLAGS[:view_devops]) } let(:owner_user) { Fabricate(:user, role: UserRole.find_by(name: 'Owner')) }