mirror of
https://github.com/mastodon/mastodon.git
synced 2024-08-20 21:08:15 -07:00
Move mastodon version config to config_for
yml
This commit is contained in:
parent
b42661ba95
commit
db68a41e0a
4 changed files with 25 additions and 16 deletions
|
@ -112,6 +112,8 @@ module Mastodon
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
config.x.mastodon = config_for(:mastodon)
|
||||||
|
|
||||||
config.to_prepare do
|
config.to_prepare do
|
||||||
Doorkeeper::AuthorizationsController.layout 'modal'
|
Doorkeeper::AuthorizationsController.layout 'modal'
|
||||||
Doorkeeper::AuthorizedApplicationsController.layout 'admin'
|
Doorkeeper::AuthorizedApplicationsController.layout 'admin'
|
||||||
|
|
8
config/mastodon.yml
Normal file
8
config/mastodon.yml
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
shared:
|
||||||
|
source:
|
||||||
|
base_url: <%= ENV.fetch('SOURCE_BASE_URL', nil) %>
|
||||||
|
repository: <%= ENV.fetch('GITHUB_REPOSITORY', 'mastodon/mastodon') %>
|
||||||
|
tag: <%= ENV.fetch('SOURCE_TAG', nil) %>
|
||||||
|
version:
|
||||||
|
metadata: <%= ENV.fetch('MASTODON_VERSION_METADATA', nil) %>
|
||||||
|
prerelease: <%= ENV.fetch('MASTODON_VERSION_PRERELEASE', nil) %>
|
|
@ -21,11 +21,11 @@ module Mastodon
|
||||||
end
|
end
|
||||||
|
|
||||||
def prerelease
|
def prerelease
|
||||||
ENV['MASTODON_VERSION_PRERELEASE'].presence || default_prerelease
|
configuration.version[:prerelease] || default_prerelease
|
||||||
end
|
end
|
||||||
|
|
||||||
def build_metadata
|
def build_metadata
|
||||||
ENV.fetch('MASTODON_VERSION_METADATA', nil)
|
configuration.version[:metadata]
|
||||||
end
|
end
|
||||||
|
|
||||||
def to_a
|
def to_a
|
||||||
|
@ -44,16 +44,16 @@ module Mastodon
|
||||||
end
|
end
|
||||||
|
|
||||||
def repository
|
def repository
|
||||||
ENV.fetch('GITHUB_REPOSITORY', 'mastodon/mastodon')
|
configuration.source[:repository]
|
||||||
end
|
end
|
||||||
|
|
||||||
def source_base_url
|
def source_base_url
|
||||||
ENV.fetch('SOURCE_BASE_URL', "https://github.com/#{repository}")
|
configuration.source[:base_url] || "https://github.com/#{repository}"
|
||||||
end
|
end
|
||||||
|
|
||||||
# specify git tag or commit hash here
|
# specify git tag or commit hash here
|
||||||
def source_tag
|
def source_tag
|
||||||
ENV.fetch('SOURCE_TAG', nil)
|
configuration.source[:tag]
|
||||||
end
|
end
|
||||||
|
|
||||||
def source_url
|
def source_url
|
||||||
|
@ -67,5 +67,9 @@ module Mastodon
|
||||||
def user_agent
|
def user_agent
|
||||||
@user_agent ||= "Mastodon/#{Version} (#{HTTP::Request::USER_AGENT}; +http#{Rails.configuration.x.use_https ? 's' : ''}://#{Rails.configuration.x.web_domain}/)"
|
@user_agent ||= "Mastodon/#{Version} (#{HTTP::Request::USER_AGENT}; +http#{Rails.configuration.x.use_https ? 's' : ''}://#{Rails.configuration.x.web_domain}/)"
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def configuration
|
||||||
|
Rails.configuration.x.mastodon
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -65,11 +65,12 @@ describe InstancePresenter do
|
||||||
end
|
end
|
||||||
|
|
||||||
describe '#source_url' do
|
describe '#source_url' do
|
||||||
context 'with the GITHUB_REPOSITORY env variable set' do
|
context 'with the github repository configured' do
|
||||||
around do |example|
|
around do |example|
|
||||||
ClimateControl.modify GITHUB_REPOSITORY: 'other/repo' do
|
original = Rails.configuration.x.mastodon.source[:repository]
|
||||||
|
Rails.configuration.x.mastodon.source[:repository] = 'other/repo'
|
||||||
example.run
|
example.run
|
||||||
end
|
Rails.configuration.x.mastodon.source[:repository] = original
|
||||||
end
|
end
|
||||||
|
|
||||||
it 'uses the env variable to build a repo URL' do
|
it 'uses the env variable to build a repo URL' do
|
||||||
|
@ -77,13 +78,7 @@ describe InstancePresenter do
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
context 'without the GITHUB_REPOSITORY env variable set' do
|
context 'without the github repository configured' do
|
||||||
around do |example|
|
|
||||||
ClimateControl.modify GITHUB_REPOSITORY: nil do
|
|
||||||
example.run
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
it 'defaults to the core mastodon repo URL' do
|
it 'defaults to the core mastodon repo URL' do
|
||||||
expect(instance_presenter.source_url).to eq('https://github.com/mastodon/mastodon')
|
expect(instance_presenter.source_url).to eq('https://github.com/mastodon/mastodon')
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in a new issue