souls 1.1.0 → 1.2.1

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: 6687121e4a87a6a320ccc886a25e10dcd8a5e3e23e556dad80a8a1b6e82e6840
4
- data.tar.gz: 91a95b811bf3c6f52b1d234e6866abc4e232ff01c2fa9a8b9b28b81418a4c656
3
+ metadata.gz: daa0fac1d0cbc60e712994999aa2cdac65ba83154d003e890cf6f68344beb07c
4
+ data.tar.gz: decaf9ee99e0916b38760fd8e03ad3405c1919f0e08cac06b165a328aa38d1c1
5
5
  SHA512:
6
- metadata.gz: c6529aeb9a1756cfb4b86adab9c51992c43535d336249c0d8da1264d55f7834ba1b84aec32d352e8d9efaf0ce0c159d72c3fe930c7e036b7ecaa45a41a841a4b
7
- data.tar.gz: 216330750b5027fd7c92e22688e37e95fcfa4cdc49a7b098e2db92b6e3f6cb680bf25fb1839b7a75dbff30f90e735b98968dfb82763b21e9261346cb5a7fec99
6
+ metadata.gz: 18b297acd49876c7f9cbc568dc0f7c1ce2f72ac51c6d783ba6f3d308c422b4b122ccbfc936a02b86eb41bb74b8f901ca6ffdf0bbf6927cd5c13b6d3f3858e3a7
7
+ data.tar.gz: 81c1fca2ce6888521ad232fb761f4b73785a921942313695c6fdd0daf714ededb61cc34770575966fb9f7230c39ea5deb97b2301e2eae4cfea2b65cef0e1e62a
data/README.md CHANGED
@@ -21,6 +21,11 @@
21
21
 
22
22
  - [Go to SOULs Document](https://souls.elsoul.nl/)
23
23
 
24
+ <p>
25
+ <a aria-label="SOULs Document" href="https://souls.elsoul.nl/">
26
+ <img src="https://souls.elsoul.nl/imgs/gifs/souls-new-video.gif">
27
+ </a>
28
+ </p>
24
29
 
25
30
  ## What's SOULs?
26
31
 
@@ -33,14 +38,30 @@ Powered by Ruby GraphQL, RBS/Steep, Active Record, RSpec, RuboCop, and Google Cl
33
38
  - Maximize development efficiency with CI / CD standard schema-driven Scaffold
34
39
  - Achieve global scale with lower management costs
35
40
 
36
- ![画像](https://souls.elsoul.nl/imgs/docs/SOULs-architecture.jpg)
37
-
41
+ ![SOULs Architecture](https://souls.elsoul.nl/imgs/docs/SOULs-architecture.jpg)
38
42
 
39
43
  SOULs creates 2 types of APP.
40
44
 
41
45
  1. API - GraphQL (Ruby) - Simple API - Cloud Run
42
46
  2. Worker - Google Pub/Sub Messaging Worker API (Ruby) - Cloud Run
43
47
 
48
+ ## Ruby type checking
49
+ The SOULs framework uses RBS / Steep, which appeared in Ruby 3.0.
50
+
51
+ - [RBS](https://github.com/ruby/rbs/)
52
+ - [Steep](https://github.com/soutaro/steep/)
53
+
54
+ As a result, typos, column types, etc.
55
+
56
+ It is a development environment where you can immediately notice the mistakes that occur frequently.
57
+
58
+ <p>
59
+ <a aria-label="RBS Demo" href="https://souls.elsoul.nl/ja/docs/guides/basic/type-check/">
60
+ <img src="https://souls.elsoul.nl/imgs/gifs/rbs-video.gif">
61
+ </a>
62
+ </p>
63
+
64
+
44
65
  ## Dependency
45
66
 
46
67
  - [Google SDK](https://cloud.google.com/sdk/docs)
@@ -7,7 +7,11 @@ module Souls
7
7
  create_service_account_key
8
8
  Souls::Gcloud.new.enable_permissions
9
9
  add_permissions
10
- export_key_to_console
10
+ begin
11
+ set_gh_secret_json
12
+ rescue StandardError
13
+ export_key_to_console
14
+ end
11
15
  rescue Thor::Error => e
12
16
  raise(Thor::Error, e)
13
17
  end
@@ -95,5 +99,11 @@ module Souls
95
99
  add_service_account_role(role: role)
96
100
  end
97
101
  end
102
+
103
+ def set_gh_secret_json
104
+ file_path = "config/keyfile.json"
105
+ system("gh secret set GCP_SA_KEY < #{file_path}")
106
+ FileUtils.rm(file_path)
107
+ end
98
108
  end
99
109
  end
@@ -0,0 +1,22 @@
1
+ module Souls
2
+ class Github < Thor
3
+ desc "auth_login", "gcloud config set and gcloud auth login"
4
+ def auth_login
5
+ system("gh auth login")
6
+ rescue Thor::Error => e
7
+ raise(Thor::Error, e)
8
+ end
9
+
10
+ desc "secret_set", "Github Secret Set by Github CLI"
11
+ def secret_set
12
+ require("#{Souls.get_api_path}/config/souls")
13
+ file_path = ".env.production"
14
+ File.open(file_path, "r") do |file|
15
+ file.each_line do |line|
16
+ key_and_value = line.split("=")
17
+ system("gh secret set #{key_and_value[0]} -b \"#{key_and_value[1].strip}\"")
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
@@ -1,5 +1,6 @@
1
1
  require_relative "./console/index"
2
2
  require_relative "./generate/index"
3
+ require_relative "./github/index"
3
4
  require_relative "./update/index"
4
5
  require_relative "./create/index"
5
6
  require_relative "./db/index"
data/lib/souls/cli.rb CHANGED
@@ -4,6 +4,9 @@ module Souls
4
4
  desc "generate [COMMAND]", "SOULs Generate Commands"
5
5
  subcommand "generate", Generate
6
6
 
7
+ desc "github [COMMAND]", "SOULs Github Commands"
8
+ subcommand "github", Github
9
+
7
10
  desc "update [COMMAND]", "SOULs Update Commands"
8
11
  subcommand "update", Update
9
12
 
@@ -32,6 +35,7 @@ module Souls
32
35
  map "c" => :console
33
36
  map "s" => :server
34
37
  map "g" => :generate
38
+ map "gh" => :github
35
39
  map "t" => :test
36
40
  map "d" => :delete
37
41
  map ["-v", "--v", "--version", "-version"] => :version
data/lib/souls/version.rb CHANGED
@@ -1,4 +1,4 @@
1
1
  module Souls
2
- VERSION = "1.1.0".freeze
2
+ VERSION = "1.2.1".freeze
3
3
  public_constant :VERSION
4
4
  end
@@ -1 +1 @@
1
- 1.1.0
1
+ 1.2.1
@@ -1 +1 @@
1
- 1.1.0
1
+ 1.2.1
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: souls
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - POPPIN-FUMI
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: exe
12
12
  cert_chain: []
13
- date: 2021-10-21 00:00:00.000000000 Z
13
+ date: 2021-10-26 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: activesupport
@@ -197,6 +197,7 @@ files:
197
197
  - lib/souls/cli/generate/rspec_resolver.rb
198
198
  - lib/souls/cli/generate/type.rb
199
199
  - lib/souls/cli/generate/type_rbs.rb
200
+ - lib/souls/cli/github/index.rb
200
201
  - lib/souls/cli/index.rb
201
202
  - lib/souls/cli/init/index.rb
202
203
  - lib/souls/cli/release/index.rb