avm-eac_webapp_base0 0.9.2 → 0.11.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8160f18a91511594f958abcaeb4678a0ff97e535274a2ca6b19953163824b1e8
4
- data.tar.gz: 77f5414962ca18876a58dbb98cc9700812c45dec665d676ea81a5111d17a7282
3
+ metadata.gz: e4f5048d43c599391f0cfedc58311f00e158bca25e9cc577fe144bbc77a91ea0
4
+ data.tar.gz: 8a15030ad33dccc81583db298e75b02ffb4074eeac004bc9ffea7fddab4ad9ff
5
5
  SHA512:
6
- metadata.gz: e5d02a3733618c182298866db7c870723bb42b4b651873b4529b79b5e44ce535e91cb11a8f16dde5e9de92922bdd2d91ef5b50ff8602ab16ebb1b57518d8ff20
7
- data.tar.gz: f1eae5b74c7477f70835b90a0e30eef37fc748f1fd26a747b80848e47867d9db457e93ae922fb363b3979c3c12368284c9a10a70515c044904365d994381d52c
6
+ metadata.gz: '079dd0246ecbf55073c241931a2be2e53bb920fe87c94b0a07285624d3bc0cce03ba0e6e4b5c0f192f4dfec4f1de60c380d0a11fc25ec507862792b5e52b8bec'
7
+ data.tar.gz: 7ca127278989ce771aac952b8378aed9b51033c467f292b9abe5565523f1c3189d9c120d2d43b1f08178288d14d2eae97787f285cfb66c89685f04b792fc8428
@@ -0,0 +1,43 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/eac_generic_base0/file_formats/base'
4
+ require 'htmlbeautifier'
5
+
6
+ module Avm
7
+ module EacWebappBase0
8
+ module FileFormats
9
+ class Html < ::Avm::EacGenericBase0::FileFormats::Base
10
+ VALID_BASENAMES = %w[*.html *.html.erb].freeze
11
+ VALID_TYPES = [].freeze
12
+
13
+ def file_apply(path)
14
+ input = ::File.read(path)
15
+ temppath = tempfile_path
16
+ ::File.open(temppath, 'w') do |output|
17
+ beautify path, input, output
18
+ end
19
+ ::FileUtils.mv(temppath, path)
20
+ super(path)
21
+ end
22
+
23
+ private
24
+
25
+ def beautify(name, input, output)
26
+ output.puts ::HtmlBeautifier.beautify(input, htmlbeautify_options)
27
+ rescue StandardError => e
28
+ raise "Error parsing #{name}: #{e}"
29
+ end
30
+
31
+ def htmlbeautify_options
32
+ @htmlbeautify_options ||= { indent: ' ' }
33
+ end
34
+
35
+ def tempfile_path
36
+ tempfile = ::Tempfile.new
37
+ tempfile.close
38
+ tempfile.path
39
+ end
40
+ end
41
+ end
42
+ end
43
+ end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/executables'
4
+ require 'avm/eac_generic_base0/file_formats/base'
5
+
6
+ module Avm
7
+ module EacWebappBase0
8
+ module FileFormats
9
+ class Javascript < ::Avm::EacGenericBase0::FileFormats::Base
10
+ VALID_BASENAMES = %w[*.js].freeze
11
+ VALID_TYPES = [].freeze
12
+
13
+ def internal_apply(files)
14
+ ::Avm::Executables.js_beautify.command.append(
15
+ ['--indent-size=2', '--end-with-newline', '--replace', *files]
16
+ ).system!
17
+ super(files)
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,25 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/eac_generic_base0/file_formats/base'
4
+
5
+ module Avm
6
+ module EacWebappBase0
7
+ module FileFormats
8
+ class Json < ::Avm::EacGenericBase0::FileFormats::Base
9
+ VALID_BASENAMES = %w[*.json].freeze
10
+ VALID_TYPES = [].freeze
11
+
12
+ def file_apply(file)
13
+ ::File.write(file, ::JSON.pretty_generate(::JSON.parse(::File.read(file))))
14
+ end
15
+
16
+ def json_file?(file)
17
+ ::JSON.parse(::File.read(file))
18
+ true
19
+ rescue JSON::ParserError
20
+ false
21
+ end
22
+ end
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/eac_webapp_base0/file_formats/html'
4
+ require 'avm/eac_webapp_base0/file_formats/javascript'
5
+ require 'avm/eac_webapp_base0/file_formats/json'
6
+ require 'avm/eac_webapp_base0/file_formats/xml'
7
+ require 'eac_ruby_utils/core_ext'
8
+
9
+ module Avm
10
+ module EacWebappBase0
11
+ module FileFormats
12
+ class Provider
13
+ ALL_NAMES = %w[html javascript json xml].freeze
14
+
15
+ def all
16
+ @all ||= ALL_NAMES.map do |name|
17
+ ::Avm::EacWebappBase0::FileFormats.const_get(name.camelize).freeze
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,26 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/executables'
4
+ require 'avm/eac_generic_base0/file_formats/base'
5
+
6
+ module Avm
7
+ module EacWebappBase0
8
+ module FileFormats
9
+ class Xml < ::Avm::EacGenericBase0::FileFormats::Base
10
+ VALID_BASENAMES = %w[*.xml].freeze
11
+ VALID_TYPES = ['xml'].freeze
12
+
13
+ def internal_apply(files)
14
+ format_command(files).system!
15
+ super(files)
16
+ end
17
+
18
+ def format_command(files)
19
+ ::Avm::Executables.tidy.command.append(
20
+ %w[-xml -modify --indent auto --indent-spaces 2 --wrap 100] + files
21
+ )
22
+ end
23
+ end
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+
5
+ module Avm
6
+ module EacWebappBase0
7
+ module FileFormats
8
+ require_sub __FILE__
9
+ end
10
+ end
11
+ end
@@ -38,7 +38,7 @@ module Avm
38
38
 
39
39
  def build_content
40
40
  infom 'Writing Git source code...'
41
- ::Avm::Git::Commit.new(git, commit_sha1).deploy_to_env_path(
41
+ scm.commit(commit_reference).deploy_to_env_path(
42
42
  build_dir_env,
43
43
  build_dir
44
44
  ).variables_source_set(variables_source).run
@@ -4,8 +4,8 @@ module Avm
4
4
  module EacWebappBase0
5
5
  module Instances
6
6
  class Deploy
7
- module GitInfo
8
- def commit_sha1_uncached
7
+ module Scm
8
+ def commit_reference_uncached
9
9
  git_fetch
10
10
  r = git.rev_parse(git_reference_found)
11
11
  return r if r
@@ -15,7 +15,7 @@ module Avm
15
15
 
16
16
  def git_fetch_uncached
17
17
  infom "Fetching remote \"#{git_remote_name}\" from \"#{git_repository_path}\"..."
18
- git.fetch(git_remote_name)
18
+ git.remote(git_remote_name).fetch
19
19
  end
20
20
 
21
21
  def git_reference
@@ -31,7 +31,7 @@ module Avm
31
31
  end
32
32
 
33
33
  def git_remote_hashs_uncached
34
- git.remote_hashs(git_remote_name)
34
+ git.remote(git_remote_name).ls.hashes
35
35
  end
36
36
 
37
37
  def git_remote_name
@@ -44,7 +44,7 @@ module Avm
44
44
 
45
45
  # @return [EacGit::Local]
46
46
  def git_uncached
47
- instance.application.local_source.scm.git_repo
47
+ scm.git_repo
48
48
  end
49
49
 
50
50
  def instance_branch
@@ -58,6 +58,11 @@ module Avm
58
58
  def master_branch
59
59
  remote_branch('master')
60
60
  end
61
+
62
+ # @return [Avm::Scms::Base]
63
+ def scm
64
+ instance.application.local_source.scm
65
+ end
61
66
  end
62
67
  end
63
68
  end
@@ -8,11 +8,11 @@ module Avm
8
8
  VERSION_TARGET_PATH = 'VERSION'
9
9
 
10
10
  def version
11
- ([::Time.now, commit_sha1] + version_git_refs).join('|')
11
+ ([::Time.now, commit_reference] + version_git_refs).join('|')
12
12
  end
13
13
 
14
14
  def version_git_refs
15
- git_remote_hashs.select { |_name, sha1| sha1 == commit_sha1 }.keys
15
+ git_remote_hashs.select { |_name, sha1| sha1 == commit_reference }.keys
16
16
  .map { |ref| ref.gsub(%r{\Arefs/}, '') }.reject { |ref| ref == 'HEAD' }
17
17
  end
18
18
 
@@ -38,7 +38,7 @@ module Avm
38
38
  infov 'Git reference (User)', git_reference.if_present('- BLANK -')
39
39
  infov 'Git remote name', git_remote_name
40
40
  infov 'Git reference (Found)', git_reference_found
41
- infov 'Git commit SHA1', commit_sha1
41
+ infov 'Git commit SHA1', commit_reference
42
42
  infov 'Appended directories', appended_directories
43
43
  end
44
44
 
@@ -50,7 +50,8 @@ module Avm
50
50
 
51
51
  def assert_instance_branch
52
52
  infom 'Setting instance branch...'
53
- git.execute!('push', git_remote_name, "#{commit_sha1}:refs/heads/#{instance.id}", '-f')
53
+ git.command('push', git_remote_name, "#{commit_reference}:refs/heads/#{instance.id}",
54
+ '-f').execute!
54
55
  end
55
56
 
56
57
  def request_test
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Avm
4
4
  module EacWebappBase0
5
- VERSION = '0.9.2'
5
+ VERSION = '0.11.0'
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: avm-eac_webapp_base0
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.2
4
+ version: 0.11.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Put here the authors
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-10-11 00:00:00.000000000 Z
11
+ date: 2022-10-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: avm
@@ -16,28 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0.46'
19
+ version: '0.51'
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: '0.46'
26
+ version: '0.51'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: avm-eac_generic_base0
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '0.5'
33
+ version: '0.6'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '0.5'
40
+ version: '0.6'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: avm-eac_postgresql_base0
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -72,14 +72,14 @@ dependencies:
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: '0.104'
75
+ version: '0.105'
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: '0.104'
82
+ version: '0.105'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: eac_ruby_gem_support
85
85
  requirement: !ruby/object:Gem::Requirement
@@ -101,6 +101,12 @@ extensions: []
101
101
  extra_rdoc_files: []
102
102
  files:
103
103
  - lib/avm/eac_webapp_base0.rb
104
+ - lib/avm/eac_webapp_base0/file_formats.rb
105
+ - lib/avm/eac_webapp_base0/file_formats/html.rb
106
+ - lib/avm/eac_webapp_base0/file_formats/javascript.rb
107
+ - lib/avm/eac_webapp_base0/file_formats/json.rb
108
+ - lib/avm/eac_webapp_base0/file_formats/provider.rb
109
+ - lib/avm/eac_webapp_base0/file_formats/xml.rb
104
110
  - lib/avm/eac_webapp_base0/instances/apache_host.rb
105
111
  - lib/avm/eac_webapp_base0/instances/apache_path.rb
106
112
  - lib/avm/eac_webapp_base0/instances/base.rb
@@ -109,7 +115,7 @@ files:
109
115
  - lib/avm/eac_webapp_base0/instances/deploy/appended_directories.rb
110
116
  - lib/avm/eac_webapp_base0/instances/deploy/build.rb
111
117
  - lib/avm/eac_webapp_base0/instances/deploy/file_unit.rb
112
- - lib/avm/eac_webapp_base0/instances/deploy/git_info.rb
118
+ - lib/avm/eac_webapp_base0/instances/deploy/scm.rb
113
119
  - lib/avm/eac_webapp_base0/instances/deploy/version.rb
114
120
  - lib/avm/eac_webapp_base0/instances/deploy/write_on_target.rb
115
121
  - lib/avm/eac_webapp_base0/instances/runners.rb