export ENTRYPOINT_VERSION=v2 export AUTO_WIZARD_VERSION=v1 get_setting_changes() { /custom-entrypoint.sh "rails r 'puts JSON.pretty_generate(JSON.parse(Setting.all.select{ |setting| setting.state_current != setting.state_initial }.map { |setting| {name: setting.name, value: setting.state_current[\""value\""]} } .to_json))'" } console() { /custom-entrypoint.sh "rails c" } rails_run() { COMMAND="rails r \"$@\"" /custom-entrypoint.sh "$COMMAND" } init() { cp -f /opt/zammad/contrib/auto_wizard.json /tmp/auto_wizard.json /custom-entrypoint.sh "rails zammad:setup:auto_wizard[/tmp/auto_wizard.json]" } enable_authentik_sso() { ADMIN_UID=$(abra app cmd -T $SSO_PROVIDER_DOMAIN worker get_user_uid akadmin) CERT=$(abra app cmd -T $SSO_PROVIDER_DOMAIN worker get_certificate zammad) COMMAND=" (u = User.find_by(login: 'admin')) && (u.login='$ADMIN_UID') && u.save!; Setting.set('auth_saml', true); Setting.set('auth_third_party_auto_link_at_inital_login', true); Setting.set('auth_saml_credentials', { 'display_name'=>'$ORGANIZATION', 'idp_sso_target_url'=>'$IDP_SSO_TARGET_URL', 'idp_slo_service_url'=>'$IDP_SLO_SERVICE_URL', 'idp_cert'=>'$CERT', 'idp_cert_fingerprint'=>'', 'name_identifier_format'=>'urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress'}) " abra app cmd -T -C support.dev.local-it.cloud zammad-railsserver rails_run "$(printf "%q " $COMMAND )" }