Merge remote-tracking branch 'parent/main' into upstream-20240117
This commit is contained in:
commit
5d79bd078c
150 changed files with 2982 additions and 1485 deletions
|
@ -4,7 +4,7 @@ module Mastodon
|
|||
module MigrationWarning
|
||||
WARNING_SECONDS = 10
|
||||
|
||||
DEFAULT_WARNING = <<~WARNING_MESSAGE
|
||||
DEFAULT_WARNING = <<~WARNING_MESSAGE.freeze
|
||||
WARNING: This migration may take a *long* time for large instances.
|
||||
It will *not* lock tables for any significant time, but it may run
|
||||
for a very long time. We will pause for #{WARNING_SECONDS} seconds to allow you to
|
||||
|
|
|
@ -35,11 +35,11 @@ module Mastodon
|
|||
end
|
||||
|
||||
def default_prerelease
|
||||
'alpha.1'
|
||||
'alpha.2'
|
||||
end
|
||||
|
||||
def prerelease
|
||||
ENV['MASTODON_VERSION_PRERELEASE'].presence || default_prerelease
|
||||
version_configuration[:prerelease].presence || default_prerelease
|
||||
end
|
||||
|
||||
def to_a_of_kmyblue
|
||||
|
@ -63,7 +63,7 @@ module Mastodon
|
|||
end
|
||||
|
||||
def build_metadata_of_mastodon
|
||||
ENV.fetch('MASTODON_VERSION_METADATA', nil)
|
||||
version_configuration[:metadata]
|
||||
end
|
||||
|
||||
def to_a
|
||||
|
@ -102,16 +102,16 @@ module Mastodon
|
|||
end
|
||||
|
||||
def repository
|
||||
ENV.fetch('GITHUB_REPOSITORY', 'kmycode/mastodon')
|
||||
source_configuration[:repository]
|
||||
end
|
||||
|
||||
def source_base_url
|
||||
ENV.fetch('SOURCE_BASE_URL', "https://github.com/#{repository}")
|
||||
source_configuration[:base_url] || "https://github.com/#{repository}"
|
||||
end
|
||||
|
||||
# specify git tag or commit hash here
|
||||
def source_tag
|
||||
ENV.fetch('SOURCE_TAG', nil)
|
||||
source_configuration[:tag]
|
||||
end
|
||||
|
||||
def source_url
|
||||
|
@ -129,5 +129,17 @@ module Mastodon
|
|||
def user_agent
|
||||
@user_agent ||= "Mastodon/#{Version} (#{HTTP::Request::USER_AGENT}; +http#{Rails.configuration.x.use_https ? 's' : ''}://#{Rails.configuration.x.web_domain}/)"
|
||||
end
|
||||
|
||||
def version_configuration
|
||||
mastodon_configuration.version
|
||||
end
|
||||
|
||||
def source_configuration
|
||||
mastodon_configuration.source
|
||||
end
|
||||
|
||||
def mastodon_configuration
|
||||
Rails.configuration.x.mastodon
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -8,16 +8,10 @@ namespace :mastodon do
|
|||
prompt = TTY::Prompt.new
|
||||
env = {}
|
||||
|
||||
# When the application code gets loaded, it runs `lib/mastodon/redis_configuration.rb`.
|
||||
# This happens before application environment configuration and sets REDIS_URL etc.
|
||||
# These variables are then used even when REDIS_HOST etc. are changed, so clear them
|
||||
# out so they don't interfere with our new configuration.
|
||||
ENV.delete('REDIS_URL')
|
||||
ENV.delete('CACHE_REDIS_URL')
|
||||
ENV.delete('SIDEKIQ_REDIS_URL')
|
||||
clear_environment!
|
||||
|
||||
begin
|
||||
errors = false
|
||||
errors = []
|
||||
|
||||
prompt.say('Your instance is identified by its domain name. Changing it afterward will break things.')
|
||||
env['LOCAL_DOMAIN'] = prompt.ask('Domain name:') do |q|
|
||||
|
@ -109,7 +103,7 @@ namespace :mastodon do
|
|||
unless prompt.yes?('Try again?')
|
||||
return prompt.warn 'Nothing saved. Bye!' unless prompt.yes?('Continue anyway?')
|
||||
|
||||
errors = true
|
||||
errors << 'Database connection could not be established.'
|
||||
break
|
||||
end
|
||||
end
|
||||
|
@ -155,7 +149,7 @@ namespace :mastodon do
|
|||
unless prompt.yes?('Try again?')
|
||||
return prompt.warn 'Nothing saved. Bye!' unless prompt.yes?('Continue anyway?')
|
||||
|
||||
errors = true
|
||||
errors << 'Redis connection could not be established.'
|
||||
break
|
||||
end
|
||||
end
|
||||
|
@ -450,7 +444,7 @@ namespace :mastodon do
|
|||
unless prompt.yes?('Try again?')
|
||||
return prompt.warn 'Nothing saved. Bye!' unless prompt.yes?('Continue anyway?')
|
||||
|
||||
errors = true
|
||||
errors << 'E-email was not sent successfully.'
|
||||
break
|
||||
end
|
||||
end
|
||||
|
@ -498,7 +492,7 @@ namespace :mastodon do
|
|||
prompt.ok 'Done!'
|
||||
else
|
||||
prompt.error 'That failed! Perhaps your configuration is not right'
|
||||
errors = true
|
||||
errors << 'Preparing the database failed'
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -515,14 +509,15 @@ namespace :mastodon do
|
|||
prompt.say 'Done!'
|
||||
else
|
||||
prompt.error 'That failed! Maybe you need swap space?'
|
||||
errors = true
|
||||
errors << 'Compiling assets failed.'
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
prompt.say "\n"
|
||||
if errors
|
||||
prompt.warn 'Your Mastodon server is set up, but there were some errors along the way, you may have to fix them.'
|
||||
if errors.any?
|
||||
prompt.warn 'Your Mastodon server is set up, but there were some errors along the way, you may have to fix them:'
|
||||
errors.each { |error| prompt.warn "- #{error}" }
|
||||
else
|
||||
prompt.ok 'All done! You can now power on the Mastodon server 🐘'
|
||||
end
|
||||
|
@ -579,6 +574,17 @@ namespace :mastodon do
|
|||
|
||||
private
|
||||
|
||||
def clear_environment!
|
||||
# When the application code gets loaded, it runs `lib/mastodon/redis_configuration.rb`.
|
||||
# This happens before application environment configuration and sets REDIS_URL etc.
|
||||
# These variables are then used even when REDIS_HOST etc. are changed, so clear them
|
||||
# out so they don't interfere with our new configuration.
|
||||
|
||||
ENV.delete('REDIS_URL')
|
||||
ENV.delete('CACHE_REDIS_URL')
|
||||
ENV.delete('SIDEKIQ_REDIS_URL')
|
||||
end
|
||||
|
||||
def generate_header(include_warning)
|
||||
default_message = "# Generated with mastodon:setup on #{Time.now.utc}\n\n"
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue