uffizzi_core 2.0.7 → 2.0.9

Sign up to get free protection for your applications and to get access to all the features.
Files changed (47) hide show
  1. checksums.yaml +4 -4
  2. data/app/clients/uffizzi_core/controller_client.rb +2 -2
  3. data/app/controllers/uffizzi_core/api/cli/v1/projects/deployments/containers/logs_controller.rb +1 -1
  4. data/app/controllers/uffizzi_core/application_controller.rb +5 -3
  5. data/app/errors/uffizzi_core/registry_not_supported_error.rb +4 -0
  6. data/app/forms/uffizzi_core/api/cli/v1/account/credential/create_form.rb +1 -1
  7. data/app/forms/uffizzi_core/api/cli/v1/account/credential/update_form.rb +1 -1
  8. data/app/forms/uffizzi_core/api/cli/v1/compose_file/check_credentials_form.rb +8 -1
  9. data/app/forms/uffizzi_core/api/cli/v1/compose_file/template_form.rb +2 -0
  10. data/app/forms/uffizzi_core/api/cli/v1/template/create_form.rb +2 -55
  11. data/app/lib/uffizzi_core/concerns/models/credential.rb +22 -17
  12. data/app/lib/uffizzi_core/concerns/models/event.rb +2 -2
  13. data/app/lib/uffizzi_core/concerns/models/repo.rb +0 -1
  14. data/app/lib/uffizzi_core/concerns/models/template.rb +16 -0
  15. data/app/models/uffizzi_core/credential.rb +3 -0
  16. data/app/serializers/uffizzi_core/api/cli/v1/projects/deployment_serializer.rb +0 -5
  17. data/app/serializers/uffizzi_core/api/cli/v1/projects/deployments/container_serializer.rb +1 -9
  18. data/app/serializers/uffizzi_core/controller/create_credential/credential_serializer.rb +1 -1
  19. data/app/services/uffizzi_core/activity_item_service.rb +2 -11
  20. data/app/services/uffizzi_core/compose_file/builders/container_builder_service.rb +33 -82
  21. data/app/services/uffizzi_core/compose_file/container_service.rb +0 -72
  22. data/app/services/uffizzi_core/compose_file_service.rb +6 -28
  23. data/app/services/uffizzi_core/{amazon/credential_service.rb → container_registry/amazon_service.rb} +20 -2
  24. data/app/services/uffizzi_core/container_registry/azure_service.rb +21 -0
  25. data/app/services/uffizzi_core/{docker_hub_service.rb → container_registry/docker_hub_service.rb} +7 -3
  26. data/app/services/uffizzi_core/{docker_registry_service.rb → container_registry/docker_registry_service.rb} +15 -1
  27. data/app/services/uffizzi_core/{github_container_registry/credential_service.rb → container_registry/github_container_registry_service.rb} +7 -4
  28. data/app/services/uffizzi_core/container_registry/google_service.rb +27 -0
  29. data/app/services/uffizzi_core/container_registry_service.rb +91 -0
  30. data/app/services/uffizzi_core/logs_service.rb +1 -0
  31. data/app/services/uffizzi_core/manage_activity_items_service.rb +2 -13
  32. data/app/services/uffizzi_core/repo_service.rb +2 -19
  33. data/config/locales/en.activerecord.yml +1 -1
  34. data/config/locales/en.yml +9 -0
  35. data/lib/uffizzi_core/version.rb +1 -1
  36. metadata +10 -17
  37. data/app/lib/uffizzi_core/concerns/models/build.rb +0 -47
  38. data/app/models/uffizzi_core/build.rb +0 -5
  39. data/app/repositories/uffizzi_core/build_repo.rb +0 -23
  40. data/app/services/uffizzi_core/amazon_service.rb +0 -31
  41. data/app/services/uffizzi_core/azure/credential_service.rb +0 -18
  42. data/app/services/uffizzi_core/credential_service.rb +0 -45
  43. data/app/services/uffizzi_core/docker_hub/credential_service.rb +0 -15
  44. data/app/services/uffizzi_core/docker_registry/credential_service.rb +0 -21
  45. data/app/services/uffizzi_core/google/credential_service.rb +0 -18
  46. data/app/services/uffizzi_core/google_service.rb +0 -21
  47. data/app/services/uffizzi_core/template_service.rb +0 -21
@@ -1,45 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- class UffizziCore::CredentialService
4
- class << self
5
- def correct_credentials?(credential)
6
- status = case credential.type
7
- when UffizziCore::Credential::DockerHub.name
8
- UffizziCore::DockerHub::CredentialService.credential_correct?(credential)
9
- when UffizziCore::Credential::DockerRegistry.name
10
- UffizziCore::DockerRegistry::CredentialService.credential_correct?(credential)
11
- when UffizziCore::Credential::GithubContainerRegistry.name
12
- UffizziCore::GithubContainerRegistry::CredentialService.credential_correct?(credential)
13
- when UffizziCore::Credential::Azure.name
14
- UffizziCore::Azure::CredentialService.credential_correct?(credential)
15
- when UffizziCore::Credential::Google.name
16
- UffizziCore::Google::CredentialService.credential_correct?(credential)
17
- when UffizziCore::Credential::Amazon.name
18
- UffizziCore::Amazon::CredentialService.credential_correct?(credential)
19
- else
20
- false
21
- end
22
-
23
- if credential.persisted? && credential.active? && !status
24
- Rails.logger.warn("Wrong credential: credential_correct? credential_id=#{credential.id}")
25
- end
26
-
27
- status
28
- end
29
-
30
- def update_expired_credentials
31
- currect_date = DateTime.now
32
- credentials = UffizziCore::Credential::Amazon.active.where('updated_at < ?', currect_date - 10.hours)
33
-
34
- credentials.each do |credential|
35
- deployments = UffizziCore::Deployment.where(project_id: credential.account.projects.select(:id)).with_amazon_repos
36
-
37
- deployments.each do |deployment|
38
- UffizziCore::Deployment::CreateCredentialJob.perform_async(deployment.id, credential.id)
39
- end
40
-
41
- credential.update(updated_at: currect_date)
42
- end
43
- end
44
- end
45
- end
@@ -1,15 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- class UffizziCore::DockerHub::CredentialService
4
- class << self
5
- def credential_correct?(credential)
6
- client(credential).authentificated?
7
- end
8
-
9
- private
10
-
11
- def client(credential)
12
- UffizziCore::DockerHubClient.new(credential)
13
- end
14
- end
15
- end
@@ -1,21 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- class UffizziCore::DockerRegistry::CredentialService
4
- class << self
5
- def credential_correct?(credential)
6
- client(credential).authenticated?
7
- end
8
-
9
- private
10
-
11
- def client(credential)
12
- params = {
13
- registry_url: credential.registry_url,
14
- username: credential.username,
15
- password: credential.password,
16
- }
17
-
18
- UffizziCore::DockerRegistryClient.new(params)
19
- end
20
- end
21
- end
@@ -1,18 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- class UffizziCore::Google::CredentialService
4
- class << self
5
- def credential_correct?(credential)
6
- client(credential).authentificated?
7
- rescue URI::InvalidURIError, Faraday::ConnectionFailed
8
- false
9
- end
10
-
11
- private
12
-
13
- def client(credential)
14
- UffizziCore::GoogleRegistryClient.new(registry_url: credential.registry_url, username: credential.username,
15
- password: credential.password)
16
- end
17
- end
18
- end
@@ -1,21 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- class UffizziCore::GoogleService
4
- class << self
5
- def digest(credential, image, tag)
6
- response = registry_client(credential).manifests(image: image, tag: tag)
7
-
8
- response.headers['docker-content-digest']
9
- end
10
-
11
- private
12
-
13
- def registry_client(credential)
14
- UffizziCore::GoogleRegistryClient.new(
15
- registry_url: credential.registry_url,
16
- username: credential.username,
17
- password: credential.password,
18
- )
19
- end
20
- end
21
- end
@@ -1,21 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- class UffizziCore::TemplateService
4
- class << self
5
- def valid_containers_memory_limit?(template)
6
- containers_attributes = template.payload['containers_attributes']
7
- container_memory_limit = template.project.account.container_memory_limit
8
- return true if container_memory_limit.nil?
9
-
10
- containers_attributes.all? { |container| container['memory_limit'].to_i <= container_memory_limit }
11
- end
12
-
13
- def valid_containers_memory_request?(template)
14
- containers_attributes = template.payload['containers_attributes']
15
- container_memory_limit = template.project.account.container_memory_limit
16
- return true if container_memory_limit.nil?
17
-
18
- containers_attributes.all? { |container| container['memory_request'].to_i <= container_memory_limit }
19
- end
20
- end
21
- end