mirror of
https://github.com/internetee/registry.git
synced 2025-06-06 20:55:44 +02:00
Merge branch 'master' into 93-locked-domains-failed-after-fc
This commit is contained in:
commit
ab26100e78
24 changed files with 269 additions and 69 deletions
25
.github/workflows/build_deploy_staging.yml
vendored
25
.github/workflows/build_deploy_staging.yml
vendored
|
@ -110,17 +110,22 @@ jobs:
|
||||||
export KUBECONFIG=./kubeconfig
|
export KUBECONFIG=./kubeconfig
|
||||||
helm repo add eisrepo https://internetee.github.io/helm-charts/
|
helm repo add eisrepo https://internetee.github.io/helm-charts/
|
||||||
helm repo update
|
helm repo update
|
||||||
helm upgrade --install registry-st-"$PR_REF" --set image.tag="$SHORT_TAG",reference="$PR_REF" eisrepo/registry -n registry-staging
|
helm upgrade --install reg-admin-"$PR_REF" --set image.tag="$SHORT_TAG",reference="$PR_REF" eisrepo/registry-admin -n reg-admin-staging
|
||||||
|
helm upgrade --install repp-"$PR_REF" --set image.tag="$SHORT_TAG",reference="$PR_REF" eisrepo/registry-epp -n epp
|
||||||
|
helm upgrade --install reg-api-"$PR_REF" --set image.tag="$SHORT_TAG",reference="$PR_REF" eisrepo/registry-api -n reg-api
|
||||||
rm kubeconfig
|
rm kubeconfig
|
||||||
|
echo "Setting up URLs"
|
||||||
echo "server obs.tld.ee
|
echo "server obs.tld.ee
|
||||||
zone pilv.tld.ee
|
zone pilv.tld.ee
|
||||||
update add registry-"$PR_REF".pilv.tld.ee. 3600 CNAME riigi.pilv.tld.ee.
|
update add reg-admin-"$PR_REF".pilv.tld.ee. 3600 CNAME riigi.pilv.tld.ee.
|
||||||
|
update add repp-"$PR_REF".pilv.tld.ee. 3600 CNAME riigi.pilv.tld.ee.
|
||||||
|
update add reg-api-"$PR_REF".pilv.tld.ee. 3600 CNAME riigi.pilv.tld.ee.
|
||||||
send
|
send
|
||||||
" | nsupdate -k ~/Kgh-runner.infra.tld.ee.+165+27011.key
|
" | nsupdate -k ~/Kgh-runner.infra.tld.ee.+165+27011.key
|
||||||
if [ "$?" -eq "0" ]; then
|
if [ "$?" -eq "0" ]; then
|
||||||
echo "CNAME update success"
|
echo "CNAME updates were successful"
|
||||||
else
|
else
|
||||||
echo "CNAME update failed"
|
echo "CNAME updates failed"
|
||||||
fi
|
fi
|
||||||
EOSSH
|
EOSSH
|
||||||
|
|
||||||
|
@ -130,9 +135,13 @@ jobs:
|
||||||
NOTIFICATION_URL: ${{ secrets.NOTIFICATION_URL}}
|
NOTIFICATION_URL: ${{ secrets.NOTIFICATION_URL}}
|
||||||
run: |
|
run: |
|
||||||
curl -i -X POST --data-urlencode 'payload={
|
curl -i -X POST --data-urlencode 'payload={
|
||||||
"text": "##### Build and deploy from pull request has been succesful :tada:\n
|
"text": "\n##### A pull request from ['${{ github.head_ref }}'](https://github.com/internetee/registry/pull/'$PR_REF') to master has been deployed :tada:\n
|
||||||
| Project | Branch | :net: |
|
|Service | :net: |
|
||||||
|:-----------|:----------------------:|:--------------------------------------:|
|
|:------------|:---------------------------------------:|
|
||||||
| **'$REPO'**|'${{ github.head_ref }}'| https://registry-'$PR_REF'.pilv.tld.ee |
|
| **Admin** | https://reg-admin-'$PR_REF'.pilv.tld.ee |
|
||||||
|
| **repp** | https://repp-'$PR_REF'.pilv.tld.ee |
|
||||||
|
| **API** | https://reg-api-'$PR_REF'.pilv.tld.ee |
|
||||||
|
|
||||||
|
Please note that the API is only accessible from Riigipilv.
|
||||||
"
|
"
|
||||||
}' $NOTIFICATION_URL
|
}' $NOTIFICATION_URL
|
29
.github/workflows/remove_st_after_pr.yml
vendored
29
.github/workflows/remove_st_after_pr.yml
vendored
|
@ -2,7 +2,7 @@ name: remove-staging-after-pull-request
|
||||||
|
|
||||||
on:
|
on:
|
||||||
pull_request:
|
pull_request:
|
||||||
types: [closed]
|
types: [closed, converted_to_draft, locked]
|
||||||
paths-ignore:
|
paths-ignore:
|
||||||
- 'CHANGELOG.md'
|
- 'CHANGELOG.md'
|
||||||
- 'README.md'
|
- 'README.md'
|
||||||
|
@ -10,7 +10,7 @@ on:
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
delete:
|
delete:
|
||||||
if: github.event.pull_request.draft == false
|
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
|
@ -70,28 +70,35 @@ jobs:
|
||||||
bash
|
bash
|
||||||
cd "$REPO"/"$PR_REF"
|
cd "$REPO"/"$PR_REF"
|
||||||
export KUBECONFIG=./kubeconfig
|
export KUBECONFIG=./kubeconfig
|
||||||
helm delete registry-st-"$PR_REF" -n registry-staging
|
helm delete reg-admin-"$PR_REF" -n reg-admin-staging
|
||||||
|
helm delete repp-"$PR_REF" -n epp
|
||||||
|
helm delete reg-api-"$PR_REF" -n reg-api
|
||||||
rm kubeconfig
|
rm kubeconfig
|
||||||
echo "server obs.tld.ee
|
echo "server obs.tld.ee
|
||||||
zone pilv.tld.ee
|
zone pilv.tld.ee
|
||||||
update delete registry-"$PR_REF".pilv.tld.ee.
|
update delete reg-admin-"$PR_REF".pilv.tld.ee.
|
||||||
|
update delete repp-"$PR_REF".pilv.tld.ee.
|
||||||
|
update delete reg-api-"$PR_REF".pilv.tld.ee.
|
||||||
send
|
send
|
||||||
" | nsupdate -k ~/Kgh-runner.infra.tld.ee.+165+27011.key
|
" | nsupdate -k ~/Kgh-runner.infra.tld.ee.+165+27011.key
|
||||||
if [ "$?" -eq "0" ]; then
|
if [ "$?" -eq "0" ]; then
|
||||||
echo "CNAME update success"
|
echo "CNAME updates were successful"
|
||||||
else
|
else
|
||||||
echo "CNAME update failed"
|
echo "CNAME updates failed"
|
||||||
fi
|
fi
|
||||||
EOSSH
|
EOSSH
|
||||||
|
|
||||||
- name: Notify developers
|
- name: Notify developers
|
||||||
timeout-minutes: 1
|
timeout-minutes: 1
|
||||||
env:
|
env:
|
||||||
NOTIFICATION_URL: ${{ secrets.NOTIFICATION_URL}}
|
NOTIFICATION_URL: ${{ secrets.NOTIFICATION_URL}}
|
||||||
run: |
|
run: |
|
||||||
curl -i -X POST --data-urlencode 'payload={
|
curl -i -X POST --data-urlencode 'payload={
|
||||||
"text": "##### Pull request was succesful, it has been merged :bowtie:\n
|
"text": "##### [Pull request](https://github.com/internetee/registry/pull/'$PR_REF') was succesful, it has been merged :bowtie:\n
|
||||||
| Project | Branch | :net: |
|
| Registry | '${{ github.head_ref }}' |
|
||||||
|:-----------|:----------------------:|:------------------------------------------:|
|
|:-----------|:-------------------------------------------:|
|
||||||
| **'$REPO'**|'${{ github.head_ref }}'| ~~https://registry-'$PR_REF'.pilv.tld.ee~~ |
|
| **Admin** | ~~https://reg-admin-'$PR_REF'.pilv.tld.ee~~ |
|
||||||
|
| **API** | ~~https://reg-api-'$PR_REF'.pilv.tld.ee~~ |
|
||||||
|
| **REPP** | ~~https://repp-'$PR_REF'.pilv.tld.ee~~ |
|
||||||
"
|
"
|
||||||
}' $NOTIFICATION_URL
|
}' $NOTIFICATION_URL
|
||||||
|
|
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -9,6 +9,7 @@
|
||||||
/config/application.yml
|
/config/application.yml
|
||||||
/config/environments/development.rb
|
/config/environments/development.rb
|
||||||
/config/deploy.rb
|
/config/deploy.rb
|
||||||
|
/.idea
|
||||||
|
|
||||||
# Do not commit one. Instead, download the latest from https://github.com/internetee/style-guide.
|
# Do not commit one. Instead, download the latest from https://github.com/internetee/style-guide.
|
||||||
.rubocop.yml
|
.rubocop.yml
|
||||||
|
|
|
@ -1,3 +1,8 @@
|
||||||
|
23.09.2021
|
||||||
|
* Fixed registrant portal link in expiration email templates [#2168](https://github.com/internetee/registry/pull/2168)
|
||||||
|
* extensionProhibited option for registry lock [#2164](https://github.com/internetee/registry/pull/2164)
|
||||||
|
* job and tests for updating regsitry lock update orhibited statuses [#2163](https://github.com/internetee/registry/pull/2163)
|
||||||
|
|
||||||
21.09.2021
|
21.09.2021
|
||||||
* Registry lock: new serverObjUpdateProhibited status replaces serverUpdateProhibited [#2162](https://github.com/internetee/registry/pull/2162)
|
* Registry lock: new serverObjUpdateProhibited status replaces serverUpdateProhibited [#2162](https://github.com/internetee/registry/pull/2162)
|
||||||
|
|
||||||
|
|
|
@ -8,7 +8,9 @@ module Api
|
||||||
before_action :authorized_to_manage_locks?
|
before_action :authorized_to_manage_locks?
|
||||||
|
|
||||||
def create
|
def create
|
||||||
if @domain.apply_registry_lock
|
extensions_prohibited = params[:extensionsProhibited]
|
||||||
|
|
||||||
|
if @domain.apply_registry_lock(extensions_prohibited: extensions_prohibited.to_s.downcase == 'true')
|
||||||
render json: serialized_domain(@domain)
|
render json: serialized_domain(@domain)
|
||||||
else
|
else
|
||||||
render json: { errors: [{ base: ['Domain cannot be locked'] }] },
|
render json: { errors: [{ base: ['Domain cannot be locked'] }] },
|
||||||
|
|
40
app/jobs/replace_upd_to_obj_upd_prohibited_job.rb
Normal file
40
app/jobs/replace_upd_to_obj_upd_prohibited_job.rb
Normal file
|
@ -0,0 +1,40 @@
|
||||||
|
class ReplaceUpdToObjUpdProhibitedJob < ApplicationJob
|
||||||
|
def perform(rollback: false)
|
||||||
|
logger.info 'Ran ReplaceUpdToObjUpdProhibitedJob!'
|
||||||
|
|
||||||
|
start_replace_status_for_locked_domains(rollback: rollback)
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
def start_replace_status_for_locked_domains(rollback:)
|
||||||
|
count = 0
|
||||||
|
Domain.all.find_in_batches do |domain_batches|
|
||||||
|
count += domain_batches.count
|
||||||
|
logger.info "Proccesing #{count} domains of #{Domain.count}"
|
||||||
|
|
||||||
|
domain_batches.each do |domain|
|
||||||
|
if domain.locked_by_registrant?
|
||||||
|
process_domain_status_replacment(domain: domain, rollback: rollback)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
logger.info "Successfully proccesed #{count} domains of #{Domain.count}"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
private
|
||||||
|
|
||||||
|
def process_domain_status_replacment(domain:, rollback:)
|
||||||
|
domain.statuses = domain.statuses - ["serverUpdateProhibited"] + ["serverObjUpdateProhibited"] unless rollback
|
||||||
|
domain.statuses = domain.statuses - ["serverObjUpdateProhibited"] + ["serverUpdateProhibited"] if rollback
|
||||||
|
if domain.save
|
||||||
|
logger.info "#{domain.name} has next statuses #{domain.statuses}"
|
||||||
|
else
|
||||||
|
logger.warn "#{domain.name} - something goes wrong!"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def logger
|
||||||
|
@logger ||= Logger.new(Rails.root.join('log/replace_upd_to_obj_upd_prohibited.log'))
|
||||||
|
end
|
||||||
|
end
|
|
@ -1,7 +1,7 @@
|
||||||
module Domain::RegistryLockable
|
module Domain::RegistryLockable
|
||||||
extend ActiveSupport::Concern
|
extend ActiveSupport::Concern
|
||||||
|
|
||||||
LOCK_STATUSES = if Feature.obj_and_extensions_statuses_enabled?
|
LOCK_STATUSES = if Feature.enable_lock_domain_with_new_statuses?
|
||||||
[DomainStatus::SERVER_OBJ_UPDATE_PROHIBITED,
|
[DomainStatus::SERVER_OBJ_UPDATE_PROHIBITED,
|
||||||
DomainStatus::SERVER_DELETE_PROHIBITED,
|
DomainStatus::SERVER_DELETE_PROHIBITED,
|
||||||
DomainStatus::SERVER_TRANSFER_PROHIBITED].freeze
|
DomainStatus::SERVER_TRANSFER_PROHIBITED].freeze
|
||||||
|
@ -11,20 +11,26 @@ module Domain::RegistryLockable
|
||||||
DomainStatus::SERVER_TRANSFER_PROHIBITED].freeze
|
DomainStatus::SERVER_TRANSFER_PROHIBITED].freeze
|
||||||
end
|
end
|
||||||
|
|
||||||
def apply_registry_lock
|
EXTENSIONS_STATUS = [DomainStatus::SERVER_EXTENSION_UPDATE_PROHIBITED].freeze
|
||||||
|
|
||||||
|
def apply_registry_lock(extensions_prohibited:)
|
||||||
return unless registry_lockable?
|
return unless registry_lockable?
|
||||||
return if locked_by_registrant?
|
return if locked_by_registrant?
|
||||||
|
|
||||||
transaction do
|
transaction do
|
||||||
self.admin_store_statuses_history = self.statuses
|
apply_statuses_locked_statuses(extensions_prohibited: extensions_prohibited)
|
||||||
self.statuses |= LOCK_STATUSES
|
|
||||||
self.locked_by_registrant_at = Time.zone.now
|
|
||||||
alert_registrar_lock_changes!(lock: true)
|
|
||||||
|
|
||||||
save!
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def apply_statuses_locked_statuses(extensions_prohibited:)
|
||||||
|
self.statuses |= LOCK_STATUSES
|
||||||
|
self.statuses |= EXTENSIONS_STATUS if Feature.obj_and_extensions_statuses_enabled? && extensions_prohibited
|
||||||
|
self.locked_by_registrant_at = Time.zone.now
|
||||||
|
alert_registrar_lock_changes!(lock: true)
|
||||||
|
|
||||||
|
save!
|
||||||
|
end
|
||||||
|
|
||||||
def registry_lockable?
|
def registry_lockable?
|
||||||
(statuses & [DomainStatus::PENDING_DELETE_CONFIRMATION,
|
(statuses & [DomainStatus::PENDING_DELETE_CONFIRMATION,
|
||||||
DomainStatus::PENDING_CREATE, DomainStatus::PENDING_UPDATE,
|
DomainStatus::PENDING_CREATE, DomainStatus::PENDING_UPDATE,
|
||||||
|
@ -42,17 +48,23 @@ module Domain::RegistryLockable
|
||||||
return unless locked_by_registrant?
|
return unless locked_by_registrant?
|
||||||
|
|
||||||
transaction do
|
transaction do
|
||||||
LOCK_STATUSES.each do |domain_status|
|
remove_statuses_from_locked_domain
|
||||||
statuses.delete([domain_status])
|
|
||||||
end
|
|
||||||
self.locked_by_registrant_at = nil
|
|
||||||
self.statuses = admin_store_statuses_history || []
|
|
||||||
alert_registrar_lock_changes!(lock: false)
|
|
||||||
|
|
||||||
save!
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def remove_statuses_from_locked_domain
|
||||||
|
LOCK_STATUSES.each do |domain_status|
|
||||||
|
statuses.delete([domain_status])
|
||||||
|
end
|
||||||
|
|
||||||
|
statuses.delete([EXTENSIONS_STATUS]) if statuses.include? EXTENSIONS_STATUS
|
||||||
|
self.locked_by_registrant_at = nil
|
||||||
|
self.statuses = admin_store_statuses_history || []
|
||||||
|
alert_registrar_lock_changes!(lock: false)
|
||||||
|
|
||||||
|
save!
|
||||||
|
end
|
||||||
|
|
||||||
def alert_registrar_lock_changes!(lock: true)
|
def alert_registrar_lock_changes!(lock: true)
|
||||||
translation = lock ? 'locked' : 'unlocked'
|
translation = lock ? 'locked' : 'unlocked'
|
||||||
registrar.notifications.create!(
|
registrar.notifications.create!(
|
||||||
|
|
|
@ -4,4 +4,10 @@ class Feature
|
||||||
|
|
||||||
ENV['obj_and_extensions_prohibited'] || false
|
ENV['obj_and_extensions_prohibited'] || false
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def self.enable_lock_domain_with_new_statuses?
|
||||||
|
return false if ENV['enable_lock_domain_with_new_statuses'] == 'false'
|
||||||
|
|
||||||
|
ENV['enable_lock_domain_with_new_statuses'] || false
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -23,7 +23,7 @@ class RegistrantUser < User
|
||||||
company_register.representation_rights(citizen_personal_code: ident,
|
company_register.representation_rights(citizen_personal_code: ident,
|
||||||
citizen_country_code: country.alpha3)
|
citizen_country_code: country.alpha3)
|
||||||
end
|
end
|
||||||
|
|
||||||
def contacts(representable: true)
|
def contacts(representable: true)
|
||||||
Contact.registrant_user_contacts(self, representable: representable)
|
Contact.registrant_user_contacts(self, representable: representable)
|
||||||
end
|
end
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
<p>Domeeni <%= @domain.name %> registripidaja:</p>
|
<p>Domeeni <%= @domain.name %> registripidaja:</p>
|
||||||
<%= render 'mailers/shared/registrar/registrar.et.html', registrar: @registrar %>
|
<%= render 'mailers/shared/registrar/registrar.et.html', registrar: @registrar %>
|
||||||
|
|
||||||
<p>Ülevaate kõikidest endaga seotud domeenidest saate <a href="https://registrant.internet.ee/registrant/">registreerija portaalist</a>.</p>
|
<p>Ülevaate kõikidest endaga seotud domeenidest saate <a href="https://registrant.internet.ee/">registreerija portaalist</a>.</p>
|
||||||
|
|
||||||
<%= render 'mailers/shared/signatures/signature.et.html' %>
|
<%= render 'mailers/shared/signatures/signature.et.html' %>
|
||||||
|
|
||||||
|
@ -26,7 +26,7 @@
|
||||||
<p>Registrar of the <%= @domain.name %>:</p>
|
<p>Registrar of the <%= @domain.name %>:</p>
|
||||||
<%= render 'mailers/shared/registrar/registrar.en.html', registrar: @registrar %>
|
<%= render 'mailers/shared/registrar/registrar.en.html', registrar: @registrar %>
|
||||||
|
|
||||||
<p>You can find an overview of all your domains at the <a href="https://registrant.internet.ee/registrant/">registrant's portal</a>.</p>
|
<p>You can find an overview of all your domains at the <a href="https://registrant.internet.ee/">registrant's portal</a>.</p>
|
||||||
|
|
||||||
<%= render 'mailers/shared/signatures/signature.en.html' %>
|
<%= render 'mailers/shared/signatures/signature.en.html' %>
|
||||||
|
|
||||||
|
@ -43,6 +43,6 @@
|
||||||
<p>Pегистратор домена <%= @domain.name %>:</p>
|
<p>Pегистратор домена <%= @domain.name %>:</p>
|
||||||
<%= render 'mailers/shared/registrar/registrar.ru.html', registrar: @registrar %>
|
<%= render 'mailers/shared/registrar/registrar.ru.html', registrar: @registrar %>
|
||||||
|
|
||||||
<p>Обзор всех связанных с вами доменов можете получить на <a href="https://registrant.internet.ee/registrant/">портале регистратора.</a></p>
|
<p>Обзор всех связанных с вами доменов можете получить на <a href="https://registrant.internet.ee/">портале регистратора.</a></p>
|
||||||
|
|
||||||
<%= render 'mailers/shared/signatures/signature.ru.html' %>
|
<%= render 'mailers/shared/signatures/signature.ru.html' %>
|
||||||
|
|
|
@ -9,7 +9,7 @@ Domeeninimi <%= @domain.name %> on aegunud ja ei ole alates <%= @domain.on_hold_
|
||||||
Domeeni <%= @domain.name %> registripidaja:
|
Domeeni <%= @domain.name %> registripidaja:
|
||||||
<%= render 'mailers/shared/registrar/registrar.et.text', registrar: @registrar %>
|
<%= render 'mailers/shared/registrar/registrar.et.text', registrar: @registrar %>
|
||||||
|
|
||||||
Ülevaate kõikidest endaga seotud domeenidest saate registreerija portaalist https://registrant.internet.ee/registrant/.
|
Ülevaate kõikidest endaga seotud domeenidest saate registreerija portaalist https://registrant.internet.ee/.
|
||||||
|
|
||||||
<%= render 'mailers/shared/signatures/signature.et.text' %>
|
<%= render 'mailers/shared/signatures/signature.et.text' %>
|
||||||
|
|
||||||
|
@ -26,7 +26,7 @@ If you do not renew the <%= @domain.name %> domain registration, it is deleted a
|
||||||
Registrar of the <%= @domain.name %>:
|
Registrar of the <%= @domain.name %>:
|
||||||
<%= render 'mailers/shared/registrar/registrar.en.text', registrar: @registrar %>
|
<%= render 'mailers/shared/registrar/registrar.en.text', registrar: @registrar %>
|
||||||
|
|
||||||
You can find an overview of all your domains at the registrant's portal https://registrant.internet.ee/registrant/.
|
You can find an overview of all your domains at the registrant's portal https://registrant.internet.ee/.
|
||||||
|
|
||||||
<%= render 'mailers/shared/signatures/signature.en.text' %>
|
<%= render 'mailers/shared/signatures/signature.en.text' %>
|
||||||
|
|
||||||
|
@ -43,6 +43,6 @@ You can find an overview of all your domains at the registrant's portal https://
|
||||||
Pегистратор домена <%= @domain.name %>:
|
Pегистратор домена <%= @domain.name %>:
|
||||||
<%= render 'mailers/shared/registrar/registrar.ru.text', registrar: @registrar %>
|
<%= render 'mailers/shared/registrar/registrar.ru.text', registrar: @registrar %>
|
||||||
|
|
||||||
Обзор всех связанных с вами доменов можете получить на портале регистратора https://registrant.internet.ee/registrant/
|
Обзор всех связанных с вами доменов можете получить на портале регистратора https://registrant.internet.ee/.
|
||||||
|
|
||||||
<%= render 'mailers/shared/signatures/signature.ru.text' %>
|
<%= render 'mailers/shared/signatures/signature.ru.text' %>
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
<p>Domeeni <%= @domain.name %> registripidaja:</p>
|
<p>Domeeni <%= @domain.name %> registripidaja:</p>
|
||||||
<%= render 'mailers/shared/registrar/registrar.et.html', registrar: @registrar %>
|
<%= render 'mailers/shared/registrar/registrar.et.html', registrar: @registrar %>
|
||||||
|
|
||||||
<p>Ülevaate kõikidest endaga seotud domeenidest saate <a href="https://registrant.internet.ee/registrant/">registreerija portaalist</a>.</p>
|
<p>Ülevaate kõikidest endaga seotud domeenidest saate <a href="https://registrant.internet.ee/">registreerija portaalist</a>.</p>
|
||||||
|
|
||||||
<%= render 'mailers/shared/signatures/signature.et.html' %>
|
<%= render 'mailers/shared/signatures/signature.et.html' %>
|
||||||
|
|
||||||
|
@ -26,7 +26,7 @@
|
||||||
<p>Registrar of the <%= @domain.name %>:</p>
|
<p>Registrar of the <%= @domain.name %>:</p>
|
||||||
<%= render 'mailers/shared/registrar/registrar.en.html', registrar: @registrar %>
|
<%= render 'mailers/shared/registrar/registrar.en.html', registrar: @registrar %>
|
||||||
|
|
||||||
<p>You can find an overview of all your domains at the <a href="https://registrant.internet.ee/registrant/">registrant's portal</a>.</p>
|
<p>You can find an overview of all your domains at the <a href="https://registrant.internet.ee/">registrant's portal</a>.</p>
|
||||||
|
|
||||||
<%= render 'mailers/shared/signatures/signature.en.html' %>
|
<%= render 'mailers/shared/signatures/signature.en.html' %>
|
||||||
|
|
||||||
|
@ -43,6 +43,6 @@
|
||||||
<p>Pегистратор домена <%= @domain.name %>:</p>
|
<p>Pегистратор домена <%= @domain.name %>:</p>
|
||||||
<%= render 'mailers/shared/registrar/registrar.ru.html', registrar: @registrar %>
|
<%= render 'mailers/shared/registrar/registrar.ru.html', registrar: @registrar %>
|
||||||
|
|
||||||
<p>Обзор всех связанных с вами доменов можете получить на <a href="https://registrant.internet.ee/registrant/">портале регистратора.</a></p>
|
<p>Обзор всех связанных с вами доменов можете получить на <a href="https://registrant.internet.ee/">портале регистратора.</a></p>
|
||||||
|
|
||||||
<%= render 'mailers/shared/signatures/signature.ru.html' %>
|
<%= render 'mailers/shared/signatures/signature.ru.html' %>
|
||||||
|
|
|
@ -9,7 +9,7 @@ Domeeninimi <%= @domain.name %> on aegunud ja ei ole alates <%= @domain.on_hold_
|
||||||
Domeeni <%= @domain.name %> registripidaja:
|
Domeeni <%= @domain.name %> registripidaja:
|
||||||
<%= render 'mailers/shared/registrar/registrar.et.html', registrar: @registrar %>
|
<%= render 'mailers/shared/registrar/registrar.et.html', registrar: @registrar %>
|
||||||
|
|
||||||
Ülevaate kõikidest endaga seotud domeenidest saate registreerija portaalist https://registrant.internet.ee/registrant/.
|
Ülevaate kõikidest endaga seotud domeenidest saate registreerija portaalist https://registrant.internet.ee/.
|
||||||
|
|
||||||
<%= render 'mailers/shared/signatures/signature.et.html' %>
|
<%= render 'mailers/shared/signatures/signature.et.html' %>
|
||||||
|
|
||||||
|
@ -26,7 +26,7 @@ If you do not renew the <%= @domain.name %> domain registration, it is deleted a
|
||||||
Registrar of the <%= @domain.name %>:
|
Registrar of the <%= @domain.name %>:
|
||||||
<%= render 'mailers/shared/registrar/registrar.en.html', registrar: @registrar %>
|
<%= render 'mailers/shared/registrar/registrar.en.html', registrar: @registrar %>
|
||||||
|
|
||||||
You can find an overview of all your domains at the registrant's portal https://registrant.internet.ee/registrant/.
|
You can find an overview of all your domains at the registrant's portal https://registrant.internet.ee/.
|
||||||
|
|
||||||
<%= render 'mailers/shared/signatures/signature.en.html' %>
|
<%= render 'mailers/shared/signatures/signature.en.html' %>
|
||||||
|
|
||||||
|
@ -43,6 +43,6 @@ You can find an overview of all your domains at the registrant's portal https://
|
||||||
Pегистратор домена <%= @domain.name %>:
|
Pегистратор домена <%= @domain.name %>:
|
||||||
<%= render 'mailers/shared/registrar/registrar.ru.html', registrar: @registrar %>
|
<%= render 'mailers/shared/registrar/registrar.ru.html', registrar: @registrar %>
|
||||||
|
|
||||||
Обзор всех связанных с вами доменов можете получить на портале регистратора https://registrant.internet.ee/registrant/.
|
Обзор всех связанных с вами доменов можете получить на портале регистратора https://registrant.internet.ee/.
|
||||||
|
|
||||||
<%= render 'mailers/shared/signatures/signature.ru.html' %>
|
<%= render 'mailers/shared/signatures/signature.ru.html' %>
|
||||||
|
|
|
@ -60,6 +60,7 @@ contact_org_enabled: 'false'
|
||||||
# legal_document_types: "pdf,asice,sce,asics,scs,adoc,edoc,bdoc,ddoc,zip,rar,gz,tar,7z,odt,doc,docx"
|
# legal_document_types: "pdf,asice,sce,asics,scs,adoc,edoc,bdoc,ddoc,zip,rar,gz,tar,7z,odt,doc,docx"
|
||||||
|
|
||||||
# obj_and_extensions_prohibited: 'true'
|
# obj_and_extensions_prohibited: 'true'
|
||||||
|
# enable_lock_domain_with_new_statuses: 'true'
|
||||||
|
|
||||||
#
|
#
|
||||||
# REGISTRAR configuration (DEPP)
|
# REGISTRAR configuration (DEPP)
|
||||||
|
|
22
lib/tasks/replace_upd_to_obj_upd_prohibited.rake
Normal file
22
lib/tasks/replace_upd_to_obj_upd_prohibited.rake
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
require 'benchmark'
|
||||||
|
|
||||||
|
# INSTRUCTIONS:
|
||||||
|
# The task works as follows, it finds a domain that has a domain lock mark and replaces the status serverUpdateProhibited with serverObjUpdateProhibited
|
||||||
|
# For run this task it need to type `rake locked_domains:replace_new_status`
|
||||||
|
# Whole results will saved into log/replace_upd_to_obj_upd_prohibited.log
|
||||||
|
# It need to make sure before launching that these statuses mean that the domain has a domain lock, otherwise this scanner will not find the required domains.
|
||||||
|
# Therefore, it is better that the value `enable_lock_domain_with_new_statuses` in the `application.yml` file is commented out or has the status false before starting. After the task has been completed, set the value `enable_lock_domain_with_new_statuses` to true, and then the domain with the following statuses `serverDeleteProhibited, serverTransferProhibited, serverObjUpdateProhibite` will be considered blocked now.
|
||||||
|
|
||||||
|
# If for some reason it need to roll back the result, then this value `enable_lock_domain_with_new_statuses` must be true, and run the command `rake locked_domains:rollback_replacement_new_status`
|
||||||
|
|
||||||
|
namespace :locked_domains do
|
||||||
|
desc 'Replace serverUpdateProhibited to serverObjUpdateProhibited for locked domains'
|
||||||
|
task replace_new_status: :environment do
|
||||||
|
ReplaceUpdToObjUpdProhibitedJob.perform_later
|
||||||
|
end
|
||||||
|
|
||||||
|
desc 'Replace serverObjUpdateProhibited to serverUpdateProhibited for locked domains'
|
||||||
|
task rollback_replacement_new_status: :environment do
|
||||||
|
ReplaceUpdToObjUpdProhibitedJob.perform_later(rollback: true)
|
||||||
|
end
|
||||||
|
end
|
|
@ -47,7 +47,7 @@ class RegistrantApiRegistryLocksTest < ApplicationIntegrationTest
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_cannot_lock_an_already_locked_domain
|
def test_cannot_lock_an_already_locked_domain
|
||||||
@domain.apply_registry_lock
|
@domain.apply_registry_lock(extensions_prohibited: false)
|
||||||
assert(@domain.locked_by_registrant?)
|
assert(@domain.locked_by_registrant?)
|
||||||
|
|
||||||
post '/api/v1/registrant/domains/2df2c1a1-8f6a-490a-81be-8bdf29866880/registry_lock',
|
post '/api/v1/registrant/domains/2df2c1a1-8f6a-490a-81be-8bdf29866880/registry_lock',
|
||||||
|
@ -59,7 +59,7 @@ class RegistrantApiRegistryLocksTest < ApplicationIntegrationTest
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_can_unlock_a_locked_domain
|
def test_can_unlock_a_locked_domain
|
||||||
@domain.apply_registry_lock
|
@domain.apply_registry_lock(extensions_prohibited: false)
|
||||||
|
|
||||||
delete '/api/v1/registrant/domains/2df2c1a1-8f6a-490a-81be-8bdf29866880/registry_lock',
|
delete '/api/v1/registrant/domains/2df2c1a1-8f6a-490a-81be-8bdf29866880/registry_lock',
|
||||||
headers: @auth_headers
|
headers: @auth_headers
|
||||||
|
|
|
@ -22,14 +22,14 @@ class DomainUpdateConfirmJobTest < ActiveSupport::TestCase
|
||||||
|
|
||||||
def test_registrant_locked_domain
|
def test_registrant_locked_domain
|
||||||
refute @domain.locked_by_registrant?
|
refute @domain.locked_by_registrant?
|
||||||
@domain.apply_registry_lock
|
@domain.apply_registry_lock(extensions_prohibited: false)
|
||||||
assert @domain.locked_by_registrant?
|
assert @domain.locked_by_registrant?
|
||||||
assert_equal(@domain.registrar.notifications.last.text, "Domain #{@domain.name} has been locked by registrant")
|
assert_equal(@domain.registrar.notifications.last.text, "Domain #{@domain.name} has been locked by registrant")
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_registrant_unlocked_domain
|
def test_registrant_unlocked_domain
|
||||||
refute @domain.locked_by_registrant?
|
refute @domain.locked_by_registrant?
|
||||||
@domain.apply_registry_lock
|
@domain.apply_registry_lock(extensions_prohibited: false)
|
||||||
assert @domain.locked_by_registrant?
|
assert @domain.locked_by_registrant?
|
||||||
@domain.remove_registry_lock
|
@domain.remove_registry_lock
|
||||||
refute @domain.locked_by_registrant?
|
refute @domain.locked_by_registrant?
|
||||||
|
|
72
test/jobs/replace_upd_to_obj_upd_prohibited_job_test.rb
Normal file
72
test/jobs/replace_upd_to_obj_upd_prohibited_job_test.rb
Normal file
|
@ -0,0 +1,72 @@
|
||||||
|
require 'test_helper'
|
||||||
|
|
||||||
|
class ReplaceUpdToObjUpdProhibitedJobTest < ActiveSupport::TestCase
|
||||||
|
include ActiveJob::TestHelper
|
||||||
|
|
||||||
|
setup do
|
||||||
|
travel_to Time.zone.parse('2010-07-05')
|
||||||
|
@domain = domains(:shop)
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_start_adding_new_status_for_locked_domains
|
||||||
|
@domain.apply_registry_lock(extensions_prohibited: false)
|
||||||
|
assert @domain.locked_by_registrant?
|
||||||
|
|
||||||
|
perform_enqueued_jobs do
|
||||||
|
ReplaceUpdToObjUpdProhibitedJob.perform_later
|
||||||
|
end
|
||||||
|
|
||||||
|
@domain.reload
|
||||||
|
assert @domain.statuses.include? "serverObjUpdateProhibited"
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_start_adding_new_status_for_locked_domains
|
||||||
|
@domain.apply_registry_lock(extensions_prohibited: false)
|
||||||
|
assert @domain.locked_by_registrant?
|
||||||
|
assert @domain.statuses.include? "serverUpdateProhibited"
|
||||||
|
|
||||||
|
# @domain.statuses += ["serverObjUpdateProhibited"]
|
||||||
|
# @domain.save
|
||||||
|
# @domain.reload
|
||||||
|
|
||||||
|
# assert @domain.statuses.include? "serverObjUpdateProhibited"
|
||||||
|
|
||||||
|
perform_enqueued_jobs do
|
||||||
|
ReplaceUpdToObjUpdProhibitedJob.perform_later
|
||||||
|
end
|
||||||
|
|
||||||
|
@domain.reload
|
||||||
|
|
||||||
|
assert_not @domain.statuses.include? "serverUpdateProhibited"
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_should_not_added_to_non_locked_domain_with_update_prohibited
|
||||||
|
@domain.statuses += ["serverUpdateProhibited"]
|
||||||
|
@domain.save
|
||||||
|
@domain.reload
|
||||||
|
assert @domain.statuses.include? "serverUpdateProhibited"
|
||||||
|
|
||||||
|
assert_not @domain.locked_by_registrant?
|
||||||
|
|
||||||
|
perform_enqueued_jobs do
|
||||||
|
ReplaceUpdToObjUpdProhibitedJob.perform_later
|
||||||
|
end
|
||||||
|
|
||||||
|
assert_not @domain.statuses.include? "serverObjUpdateProhibited"
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_should_not_removed_from_non_locked_domain_with_update_prohibited
|
||||||
|
@domain.statuses += ["serverUpdateProhibited"]
|
||||||
|
@domain.save
|
||||||
|
@domain.reload
|
||||||
|
assert @domain.statuses.include? "serverUpdateProhibited"
|
||||||
|
|
||||||
|
assert_not @domain.locked_by_registrant?
|
||||||
|
|
||||||
|
perform_enqueued_jobs do
|
||||||
|
ReplaceUpdToObjUpdProhibitedJob.perform_later
|
||||||
|
end
|
||||||
|
|
||||||
|
assert @domain.statuses.include? "serverUpdateProhibited"
|
||||||
|
end
|
||||||
|
end
|
|
@ -16,7 +16,7 @@ class SerializersRegistrantApiDomainTest < ActiveSupport::TestCase
|
||||||
assert_not(@json[:locked_by_registrant_at])
|
assert_not(@json[:locked_by_registrant_at])
|
||||||
|
|
||||||
travel_to Time.zone.parse('2010-07-05 10:30')
|
travel_to Time.zone.parse('2010-07-05 10:30')
|
||||||
@domain.apply_registry_lock
|
@domain.apply_registry_lock(extensions_prohibited: false)
|
||||||
serializer_for_locked_domain = Serializers::RegistrantApi::Domain.new(@domain.reload)
|
serializer_for_locked_domain = Serializers::RegistrantApi::Domain.new(@domain.reload)
|
||||||
new_json = serializer_for_locked_domain.to_json
|
new_json = serializer_for_locked_domain.to_json
|
||||||
|
|
||||||
|
|
|
@ -31,7 +31,7 @@ class DomainVersionTest < ActiveSupport::TestCase
|
||||||
PaperTrail.request.whodunnit = @user.id_role_username
|
PaperTrail.request.whodunnit = @user.id_role_username
|
||||||
|
|
||||||
assert_difference '@domain.versions.count', 1 do
|
assert_difference '@domain.versions.count', 1 do
|
||||||
@domain.apply_registry_lock
|
@domain.apply_registry_lock(extensions_prohibited: false)
|
||||||
end
|
end
|
||||||
|
|
||||||
assert_equal(@domain.updator, @user)
|
assert_equal(@domain.updator, @user)
|
||||||
|
|
|
@ -11,14 +11,14 @@ class DomainRegistryLockableTest < ActiveSupport::TestCase
|
||||||
refute(@domain.locked_by_registrant?)
|
refute(@domain.locked_by_registrant?)
|
||||||
@domain.update(statuses: [DomainStatus::SERVER_TRANSFER_PROHIBITED])
|
@domain.update(statuses: [DomainStatus::SERVER_TRANSFER_PROHIBITED])
|
||||||
|
|
||||||
@domain.apply_registry_lock # Raise validation error
|
@domain.apply_registry_lock(extensions_prohibited: false) # Raise validation error
|
||||||
|
|
||||||
check_statuses_lockable_domain
|
check_statuses_lockable_domain
|
||||||
assert(@domain.locked_by_registrant?)
|
assert(@domain.locked_by_registrant?)
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_remove_lockalable_statuses_after_admin_intervention
|
def test_remove_lockalable_statuses_after_admin_intervention
|
||||||
@domain.apply_registry_lock
|
@domain.apply_registry_lock(extensions_prohibited: false)
|
||||||
assert @domain.locked_by_registrant?
|
assert @domain.locked_by_registrant?
|
||||||
assert_equal @domain.statuses.sort, Domain::RegistryLockable::LOCK_STATUSES.sort
|
assert_equal @domain.statuses.sort, Domain::RegistryLockable::LOCK_STATUSES.sort
|
||||||
|
|
||||||
|
@ -26,7 +26,7 @@ class DomainRegistryLockableTest < ActiveSupport::TestCase
|
||||||
@domain.update(statuses: deleted_status)
|
@domain.update(statuses: deleted_status)
|
||||||
assert_not @domain.locked_by_registrant?
|
assert_not @domain.locked_by_registrant?
|
||||||
|
|
||||||
@domain.apply_registry_lock
|
@domain.apply_registry_lock(extensions_prohibited: false)
|
||||||
assert @domain.locked_by_registrant?
|
assert @domain.locked_by_registrant?
|
||||||
@domain.remove_registry_lock
|
@domain.remove_registry_lock
|
||||||
|
|
||||||
|
@ -41,7 +41,7 @@ class DomainRegistryLockableTest < ActiveSupport::TestCase
|
||||||
@domain.save
|
@domain.save
|
||||||
assert @domain.admin_store_statuses_history.include? DomainStatus::SERVER_UPDATE_PROHIBITED
|
assert @domain.admin_store_statuses_history.include? DomainStatus::SERVER_UPDATE_PROHIBITED
|
||||||
|
|
||||||
@domain.apply_registry_lock
|
@domain.apply_registry_lock(extensions_prohibited: false)
|
||||||
assert @domain.locked_by_registrant?
|
assert @domain.locked_by_registrant?
|
||||||
assert_equal @domain.statuses.sort, Domain::RegistryLockable::LOCK_STATUSES.sort
|
assert_equal @domain.statuses.sort, Domain::RegistryLockable::LOCK_STATUSES.sort
|
||||||
|
|
||||||
|
@ -52,7 +52,7 @@ class DomainRegistryLockableTest < ActiveSupport::TestCase
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_add_additinal_status_for_locked_domain
|
def test_add_additinal_status_for_locked_domain
|
||||||
@domain.apply_registry_lock
|
@domain.apply_registry_lock(extensions_prohibited: false)
|
||||||
assert @domain.locked_by_registrant?
|
assert @domain.locked_by_registrant?
|
||||||
assert_equal @domain.statuses.sort, Domain::RegistryLockable::LOCK_STATUSES.sort
|
assert_equal @domain.statuses.sort, Domain::RegistryLockable::LOCK_STATUSES.sort
|
||||||
|
|
||||||
|
@ -69,7 +69,7 @@ class DomainRegistryLockableTest < ActiveSupport::TestCase
|
||||||
|
|
||||||
def test_lockable_domain_if_remove_some_prohibited_status
|
def test_lockable_domain_if_remove_some_prohibited_status
|
||||||
refute(@domain.locked_by_registrant?)
|
refute(@domain.locked_by_registrant?)
|
||||||
@domain.apply_registry_lock
|
@domain.apply_registry_lock(extensions_prohibited: false)
|
||||||
check_statuses_lockable_domain
|
check_statuses_lockable_domain
|
||||||
assert(@domain.locked_by_registrant?)
|
assert(@domain.locked_by_registrant?)
|
||||||
|
|
||||||
|
@ -85,7 +85,7 @@ class DomainRegistryLockableTest < ActiveSupport::TestCase
|
||||||
|
|
||||||
def test_registry_lock_on_lockable_domain
|
def test_registry_lock_on_lockable_domain
|
||||||
refute(@domain.locked_by_registrant?)
|
refute(@domain.locked_by_registrant?)
|
||||||
@domain.apply_registry_lock
|
@domain.apply_registry_lock(extensions_prohibited: false)
|
||||||
|
|
||||||
assert_equal(
|
assert_equal(
|
||||||
[DomainStatus::SERVER_UPDATE_PROHIBITED,
|
[DomainStatus::SERVER_UPDATE_PROHIBITED,
|
||||||
|
@ -99,21 +99,21 @@ class DomainRegistryLockableTest < ActiveSupport::TestCase
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_registry_lock_cannot_be_applied_twice
|
def test_registry_lock_cannot_be_applied_twice
|
||||||
@domain.apply_registry_lock
|
@domain.apply_registry_lock(extensions_prohibited: false)
|
||||||
refute(@domain.apply_registry_lock)
|
refute(@domain.apply_registry_lock(extensions_prohibited: false))
|
||||||
assert(@domain.locked_by_registrant?)
|
assert(@domain.locked_by_registrant?)
|
||||||
assert(@domain.locked_by_registrant_at)
|
assert(@domain.locked_by_registrant_at)
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_registry_lock_cannot_be_applied_on_pending_statuses
|
def test_registry_lock_cannot_be_applied_on_pending_statuses
|
||||||
@domain.statuses << DomainStatus::PENDING_RENEW
|
@domain.statuses << DomainStatus::PENDING_RENEW
|
||||||
refute(@domain.apply_registry_lock)
|
refute(@domain.apply_registry_lock(extensions_prohibited: false))
|
||||||
refute(@domain.locked_by_registrant?)
|
refute(@domain.locked_by_registrant?)
|
||||||
refute(@domain.locked_by_registrant_at)
|
refute(@domain.locked_by_registrant_at)
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_remove_registry_lock_on_locked_domain
|
def test_remove_registry_lock_on_locked_domain
|
||||||
@domain.apply_registry_lock
|
@domain.apply_registry_lock(extensions_prohibited: false)
|
||||||
|
|
||||||
assert_equal(
|
assert_equal(
|
||||||
[DomainStatus::SERVER_UPDATE_PROHIBITED,
|
[DomainStatus::SERVER_UPDATE_PROHIBITED,
|
||||||
|
|
|
@ -1,6 +1,11 @@
|
||||||
require 'test_helper'
|
require 'test_helper'
|
||||||
|
|
||||||
class FeatureTest < ActiveSupport::TestCase
|
class FeatureTest < ActiveSupport::TestCase
|
||||||
|
setup do
|
||||||
|
@domain = domains(:shop)
|
||||||
|
@domain.apply_registry_lock(extensions_prohibited: false)
|
||||||
|
end
|
||||||
|
|
||||||
def test_if_obj_and_extensions_prohibited_enabled
|
def test_if_obj_and_extensions_prohibited_enabled
|
||||||
ENV['obj_and_extensions_prohibited'] = 'true'
|
ENV['obj_and_extensions_prohibited'] = 'true'
|
||||||
|
|
||||||
|
@ -27,4 +32,22 @@ class FeatureTest < ActiveSupport::TestCase
|
||||||
statuses = DomainStatus.admin_statuses
|
statuses = DomainStatus.admin_statuses
|
||||||
assert_not statuses.include? DomainStatus::SERVER_OBJ_UPDATE_PROHIBITED
|
assert_not statuses.include? DomainStatus::SERVER_OBJ_UPDATE_PROHIBITED
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def test_if_enable_lock_domain_with_new_statuses_is_nil
|
||||||
|
ENV['enable_lock_domain_with_new_statuses'] = nil
|
||||||
|
|
||||||
|
assert_not Feature.enable_lock_domain_with_new_statuses?
|
||||||
|
|
||||||
|
assert_equal @domain.statuses, ["serverUpdateProhibited", "serverDeleteProhibited", "serverTransferProhibited"]
|
||||||
|
assert @domain.locked_by_registrant?
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_if_enable_lock_domain_with_new_statuses_is_false
|
||||||
|
ENV['enable_lock_domain_with_new_statuses'] = 'false'
|
||||||
|
|
||||||
|
assert_not Feature.enable_lock_domain_with_new_statuses?
|
||||||
|
|
||||||
|
assert_equal @domain.statuses, ["serverUpdateProhibited", "serverDeleteProhibited", "serverTransferProhibited"]
|
||||||
|
assert @domain.locked_by_registrant?
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -17,7 +17,7 @@ class AdminAreaRegistryLockTest < JavaScriptApplicationSystemTestCase
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_can_remove_registry_lock_from_a_domain
|
def test_can_remove_registry_lock_from_a_domain
|
||||||
@domain.apply_registry_lock
|
@domain.apply_registry_lock(extensions_prohibited: false)
|
||||||
|
|
||||||
visit edit_admin_domain_path(@domain)
|
visit edit_admin_domain_path(@domain)
|
||||||
click_link_or_button('Actions')
|
click_link_or_button('Actions')
|
||||||
|
@ -34,7 +34,7 @@ class AdminAreaRegistryLockTest < JavaScriptApplicationSystemTestCase
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_cannot_remove_registry_lock_from_not_locked_domain
|
def test_cannot_remove_registry_lock_from_not_locked_domain
|
||||||
@domain.apply_registry_lock
|
@domain.apply_registry_lock(extensions_prohibited: false)
|
||||||
visit edit_admin_domain_path(@domain)
|
visit edit_admin_domain_path(@domain)
|
||||||
@domain.remove_registry_lock
|
@domain.remove_registry_lock
|
||||||
|
|
||||||
|
|
|
@ -20,7 +20,7 @@ class AdminDomainsTestTest < ApplicationSystemTestCase
|
||||||
refute_text 'Registry lock time 2010-07-05 00:30'
|
refute_text 'Registry lock time 2010-07-05 00:30'
|
||||||
|
|
||||||
lockable_domain = domains(:airport)
|
lockable_domain = domains(:airport)
|
||||||
lockable_domain.apply_registry_lock
|
lockable_domain.apply_registry_lock(extensions_prohibited: false)
|
||||||
|
|
||||||
visit admin_domain_path(lockable_domain)
|
visit admin_domain_path(lockable_domain)
|
||||||
assert_text 'Registry lock time 2010-07-05 00:30'
|
assert_text 'Registry lock time 2010-07-05 00:30'
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue