redmine_remotes 0.16.7 → 0.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/app/controllers/project_remote_issues_controller/create.rb +1 -1
- data/app/controllers/project_remote_issues_controller/index.rb +1 -1
- data/app/controllers/remote_trackers_controller.rb +2 -1
- data/app/models/remote_tracker.rb +6 -0
- data/app/models/remote_tracker_fetch.rb +8 -0
- data/app/tableless_models/redmine_remotes/issue_fetch/create.rb +8 -0
- data/config/locales/en.yml +2 -0
- data/config/locales/pt-BR.yml +2 -0
- data/db/migrate/20250812183322_add_active_to_remote_trackers.rb +7 -0
- data/lib/redmine_remotes/jobs/fetch_issues.rb +2 -1
- data/lib/redmine_remotes/jobs/fetch_trackers.rb +1 -1
- data/lib/redmine_remotes/version.rb +1 -1
- data/lib/tasks/redmine_remotes.rake +6 -1
- metadata +5 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: cf6d23188062f0476f6598e42055e123de909cc496382ff64f04d71d54ccb8de
|
4
|
+
data.tar.gz: 411d6fcc85786f038278fc2cd517cea9e26ebc1c3194c61d505b96074f97d6d8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9d91eece50ad428c093408da261deedbde6c4bd6fd9a653f6096b2c64986a8e85614d73d4b1c6ddfc67e734121b3c1d8e3a7626a6dce08b156d6e71857f88a13
|
7
|
+
data.tar.gz: ae55543e1a1013b364b766c361b6db5596d546f89862134cb34cd77b5120e8aef788cc63979ab370a100c0c73a40ec6945b773ed90d897dfa68175f4e5203046
|
@@ -3,7 +3,7 @@
|
|
3
3
|
class ProjectRemoteIssuesController < ApplicationController
|
4
4
|
module Index
|
5
5
|
def index
|
6
|
-
@trackers = ::RemoteTracker.order(profile: :asc, root_url: :asc, username: :asc)
|
6
|
+
@trackers = ::RemoteTracker.active.order(profile: :asc, root_url: :asc, username: :asc)
|
7
7
|
end
|
8
8
|
end
|
9
9
|
end
|
@@ -10,10 +10,11 @@ class RemoteTrackersController < ApplicationController
|
|
10
10
|
require_permission PERMISSIONS
|
11
11
|
|
12
12
|
active_scaffold :remote_tracker do |conf|
|
13
|
-
conf.columns = %i[profile root_url username password default_local_user]
|
13
|
+
conf.columns = %i[active profile root_url username password default_local_user]
|
14
14
|
conf.columns[:password].form_ui = :password
|
15
15
|
conf.columns[:profile].form_ui = :select
|
16
16
|
conf.columns[:default_local_user].form_ui = :select
|
17
|
+
conf.columns[:active].form_ui = :checkbox
|
17
18
|
%w[list show].each do |action|
|
18
19
|
conf.send(action).columns.exclude :password
|
19
20
|
conf.send(action).columns << :fetched_at
|
@@ -27,6 +27,12 @@ class RemoteTracker < ActiveRecord::Base
|
|
27
27
|
validates :password, presence: true
|
28
28
|
|
29
29
|
scope :fetchable, -> { where(profile: fetchable_profiles) }
|
30
|
+
scope :active, -> { where(active: true) }
|
31
|
+
|
32
|
+
# @return [Boolean]
|
33
|
+
def active?
|
34
|
+
active
|
35
|
+
end
|
30
36
|
|
31
37
|
def fetchable?
|
32
38
|
self.class.fetchable_profiles.include?(profile)
|
@@ -13,6 +13,7 @@ class RemoteTrackerFetch < EacRailsUtils::Models::Tableless
|
|
13
13
|
validates :start_time, presence: true
|
14
14
|
validates :end_time, presence: true
|
15
15
|
validate :remote_tracker_fetchable_validation
|
16
|
+
validate :remote_tracker_active_validation
|
16
17
|
|
17
18
|
def save # rubocop:disable Naming/PredicateMethod
|
18
19
|
::Issue.transaction do
|
@@ -43,4 +44,11 @@ class RemoteTrackerFetch < EacRailsUtils::Models::Tableless
|
|
43
44
|
|
44
45
|
errors.add(:remote_tracker, "Remote tracker \"#{remote_tracker}\" is not fetchable")
|
45
46
|
end
|
47
|
+
|
48
|
+
def remote_tracker_active_validation
|
49
|
+
return if remote_tracker.blank?
|
50
|
+
return if remote_tracker.active?
|
51
|
+
|
52
|
+
errors.add(:remote_tracker, "Remote tracker \"#{remote_tracker}\" is inactive")
|
53
|
+
end
|
46
54
|
end
|
@@ -15,6 +15,7 @@ module RedmineRemotes
|
|
15
15
|
belongs_to :remote_tracker, class_name: 'RemoteTracker'
|
16
16
|
|
17
17
|
validate :tracker_in_project
|
18
|
+
validate :remote_tracker_active
|
18
19
|
|
19
20
|
def default_error_column
|
20
21
|
:issue_remote_code
|
@@ -31,6 +32,13 @@ module RedmineRemotes
|
|
31
32
|
errors.add(:local_tracker, 'is not a tracker of project')
|
32
33
|
end
|
33
34
|
|
35
|
+
def remote_tracker_active
|
36
|
+
return if remote_tracker.blank?
|
37
|
+
return if remote_tracker.active?
|
38
|
+
|
39
|
+
errors.add(:remote_tracker, 'is inactive')
|
40
|
+
end
|
41
|
+
|
34
42
|
def update # rubocop:disable Naming/PredicateMethod
|
35
43
|
update_record = ::RedmineRemotes::IssueFetch::Update
|
36
44
|
.new(remote_issue: remote_issue_by_remote_code)
|
data/config/locales/en.yml
CHANGED
@@ -25,6 +25,8 @@ en:
|
|
25
25
|
field_remote_tracker: Remote tracker
|
26
26
|
label_remote_issues: Remote issues
|
27
27
|
label_remote_trackers: Remote trackers
|
28
|
+
field_active: Active
|
29
|
+
label_active: Active
|
28
30
|
label_remote_tracker_settings: Remote trackers / Settings
|
29
31
|
label_remote_issue_statuses: Remote issue statuses
|
30
32
|
label_remote_users: Remote users
|
data/config/locales/pt-BR.yml
CHANGED
@@ -23,6 +23,8 @@ pt-BR:
|
|
23
23
|
field_remote_code: Código remoto
|
24
24
|
field_remote_name: Nome da situação de demanda remota
|
25
25
|
field_remote_tracker: Tracker remoto
|
26
|
+
field_active: Ativo
|
27
|
+
label_active: Ativo
|
26
28
|
label_remote_issues: Demandas remotas
|
27
29
|
label_remote_trackers: Trackers remotos
|
28
30
|
label_remote_tracker_settings: Trackers remotos / Configurações
|
@@ -11,6 +11,11 @@ namespace :redmine_remotes do # rubocop:disable Metrics/BlockLength
|
|
11
11
|
remote_tracker = RemoteTracker.find(args.remote_tracker_id)
|
12
12
|
Rails.logger.info("Remote tracker: #{remote_tracker}")
|
13
13
|
|
14
|
+
unless remote_tracker.active?
|
15
|
+
Rails.logger.error("Remote tracker \"#{remote_tracker}\" is inactive")
|
16
|
+
next
|
17
|
+
end
|
18
|
+
|
14
19
|
project = Project.find_by(identifier: args.project_identifier)
|
15
20
|
Rails.logger.info("Project: #{project}")
|
16
21
|
|
@@ -21,7 +26,7 @@ namespace :redmine_remotes do # rubocop:disable Metrics/BlockLength
|
|
21
26
|
end
|
22
27
|
Rails.logger.info("Local tracker: #{local_tracker}")
|
23
28
|
|
24
|
-
add =
|
29
|
+
add = RedmineRemotes::IssueFetch::Create.new(
|
25
30
|
remote_tracker: remote_tracker, project: project, local_tracker: local_tracker,
|
26
31
|
issue_remote_code: args.issue_remote_code
|
27
32
|
)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: redmine_remotes
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.17.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Eduardo Henrique Bogoni
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2025-09-
|
11
|
+
date: 2025-09-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: curb
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '1.
|
19
|
+
version: '1.2'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '1.
|
26
|
+
version: '1.2'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: eac_rails_utils
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -177,6 +177,7 @@ files:
|
|
177
177
|
- db/migrate/20200602192120_add_outdated_at_to_remote_issues.rb
|
178
178
|
- db/migrate/20200602194753_add_fetched_at_to_remote_issues.rb
|
179
179
|
- db/migrate/20200602203020_add_fetched_at_to_remote_trackers.rb
|
180
|
+
- db/migrate/20250812183322_add_active_to_remote_trackers.rb
|
180
181
|
- init.rb
|
181
182
|
- lib/redmine_remotes.rb
|
182
183
|
- lib/redmine_remotes/esosti.rb
|