souls 0.30.7 → 0.30.11

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: 7a4d1d8b20011a9f2b4b1fa48ad73092a33c8bd25ac14691d54bf3b3be48f91f
4
- data.tar.gz: 9c6c2e0c54fb914c4b077b00dd1301a4145a9b890384a0567ced64dda532d973
3
+ metadata.gz: f38dfac57a8b3a98a3ae32b48998897daa2b28261a6122f32f7304150b2b8823
4
+ data.tar.gz: f8a82211d490d1fd8b1e66ef9d73f4a706dfdd13e39a4a813f897ac3df8612aa
5
5
  SHA512:
6
- metadata.gz: 68fff94ac5906851ebd89a3a544136b9158976488a367e069ab334833e6ee6964fc1fa5334ee090ae20ee589d3967c468473eb3a98267d646bf2fd49db62f86f
7
- data.tar.gz: 2d460978cbae9f2699a773088a0d5b9fb562ec4e40e290f2f837157fd0221951a2aa9409598002a87e658a33b3f4c30d378b80eb291d23cc0a3476327b0b7560
6
+ metadata.gz: 8e1c020a1ffba4bf351ac780d49d2bcf718bcc5e751285d90c837cf3f650ae1271e451c87e9a31f7c13ec209aeb78d7b4e2fa7b77ccf103f56a4246e4466b155
7
+ data.tar.gz: 222e487819450db435505e66b282ae8aabba487ecd50de08ffeb33a071e612aa843c1d6e148f17613b9e25ffa27b08a6f49ce2a864dff1d08827343b5490c2df
data/README.md CHANGED
@@ -21,12 +21,18 @@
21
21
 
22
22
  Welcome to SOULs Serverless Application Framework!
23
23
 
24
- SOULs is a Serverless Application Framework with Ruby GraphQL.
25
- SOULs has 3 strains, API, Worker, and Frontend. It can be used in combination according to the purpose. SOULs Backend GraphQL Ruby & Frontend Relay are Scalable and Easy to deploy to Google Cloud. No more routing for Backends!
26
- You can focus on your business logic.
24
+ SOULs はサーバーレスフルスタックフレームワークです。柔軟な Ruby GraphQL API Worker はルーティングの必要がありません。
25
+ クラウド環境への自動デプロイ、CI/CD ワークフローを標準装備。開発者がビジネスロジックに集中し、楽しくコードが書けるような環境を目指しています。
26
+
27
+ SOULs バックエンドには `API` と `Worker` の 2 つのタイプがあります。
28
+ `API` は主にデータをフロントエンドへ提供します。`Worker` は主に `タスク` の処理を行います
27
29
 
28
30
  ![画像](https://storage.googleapis.com/souls-bucket/imgs/souls-structure.jpg)
29
31
 
32
+ 現在のバージョンでは SOULs `API` と `Worker` を Github Actions を使って Google Cloud Run へそれぞれデプロイします。
33
+
34
+ SOULs フレームワークでは [Monorepo](https://en.wikipedia.org/wiki/Monorepo) によって一つのパッケージでアプリケーションを管理します。
35
+
30
36
  SOULs creates 3 types of framework.
31
37
 
32
38
  1. API - GraphQL (Ruby) - Simple API - Cloud Run
@@ -72,13 +78,11 @@ Or install it yourself as:
72
78
  And Create Your APP
73
79
 
74
80
  $ souls new app_name
81
+ $ cd apps/api/app_name
82
+ $ bundle
83
+ $ souls s
75
84
 
76
- ## Choose SOULs Type:
77
85
 
78
- Select Strain:
79
- 1. SOULs GraphQL API
80
- 2. SOULs Worker
81
- 3. SOULs Frontend Web
82
86
 
83
87
 
84
88
  ## Gemfile 自動更新アップデート
@@ -99,7 +103,7 @@ Souls.configure do |config|
99
103
  config.app = "souls-api"
100
104
  config.project_id = "souls-api"
101
105
  config.strain = "api"
102
- config.worker_endpoint = "https://worker.com"
106
+ config.github_repo = "elsoul/souls"
103
107
  config.fixed_gems = ["selenium-webdriver", "pg"]
104
108
  end
105
109
  ```
data/lib/souls.rb CHANGED
@@ -3,11 +3,8 @@ require "active_support/core_ext/string/inflections"
3
3
  require_relative "souls/init"
4
4
  require_relative "souls/api"
5
5
  require_relative "souls/worker"
6
- require_relative "souls/gcloud"
7
- require_relative "souls/release"
8
- require_relative "souls/docker"
6
+ require_relative "souls/cli"
9
7
  require "date"
10
- require "dotenv/load"
11
8
  require "json"
12
9
  require "fileutils"
13
10
  require "net/http"
@@ -230,9 +230,17 @@ module Souls
230
230
  new_line.write(" \"#{name.singularize.camelize(:lower)}\" => be_a(String),\n")
231
231
  end
232
232
  when "boolean"
233
- new_line.write(" \"#{name.singularize.camelize(:lower)}\" => be_in([true, false]),\n")
233
+ if array_true
234
+ new_line.write(" \"#{name.pluralize.camelize(:lower)}\" => be_all([true, false]),\n")
235
+ else
236
+ new_line.write(" \"#{name.singularize.camelize(:lower)}\" => be_in([true, false]),\n")
237
+ end
234
238
  when "string", "bigint", "integer", "float"
235
- new_line.write(" \"#{name.singularize.camelize(:lower)}\" => be_a(#{field}),\n")
239
+ if array_true
240
+ new_line.write(" \"#{name.pluralize.camelize(:lower)}\" => be_all(#{field}),\n")
241
+ else
242
+ new_line.write(" \"#{name.singularize.camelize(:lower)}\" => be_a(#{field}),\n")
243
+ end
236
244
  end
237
245
  end
238
246
  end
@@ -157,9 +157,17 @@ module Souls
157
157
  new_line.write(" \"#{name.camelize(:lower)}\" => be_a(String),\n")
158
158
  end
159
159
  when "boolean"
160
- new_line.write(" \"#{name.singularize.camelize(:lower)}\" => be_in([true, false]),\n")
160
+ if array_true
161
+ new_line.write(" \"#{name.camelize(:lower)}\" => be_all([true, false]),\n")
162
+ else
163
+ new_line.write(" \"#{name.singularize.camelize(:lower)}\" => be_in([true, false]),\n")
164
+ end
161
165
  when "string", "bigint", "integer", "float"
162
- new_line.write(" \"#{name.singularize.camelize(:lower)}\" => be_a(#{field}),\n")
166
+ if array_true
167
+ new_line.write(" \"#{name.camelize(:lower)}\" => be_all(#{field}),\n")
168
+ else
169
+ new_line.write(" \"#{name.singularize.camelize(:lower)}\" => be_a(#{field}),\n")
170
+ end
163
171
  end
164
172
  end
165
173
  end
@@ -44,6 +44,8 @@ module Souls
44
44
  FileUtils.rm(file_path)
45
45
  FileUtils.mv(new_file_path, file_path)
46
46
  puts(Paint % ["Updated file! : %{white_text}", :green, { white_text: [file_path.to_s, :white] }])
47
+ rescue StandardError => e
48
+ p(e)
47
49
  end
48
50
 
49
51
  def check_resolver_argument(class_name: "user", action: "argument")
@@ -24,6 +24,7 @@ module Souls
24
24
  new_cols.each do |col|
25
25
  type = Souls::Api::Generate.type_check(col[:type])
26
26
  next if col[:column_name] == "created_at" || col[:column_name] == "updated_at"
27
+
27
28
  type_line =
28
29
  if type == "String" && !col[:array]
29
30
  " #{col[:column_name].camelize(:lower)}: \"\#{#{class_name}[:#{col[:column_name].underscore}]}\"\n"
@@ -31,7 +32,7 @@ module Souls
31
32
  " #{col[:column_name].camelize(:lower)}: \#{#{class_name}[:#{col[:column_name].underscore}]}\n"
32
33
  end
33
34
  args = check_rspec_mutation_argument(class_name: class_name)
34
- new_line.write(type_line) unless args.include?(col[:column_name].singularize.underscore)
35
+ new_line.write(type_line) unless args.include?(col[:column_name].underscore)
35
36
  end
36
37
  argument = true
37
38
  elsif node_res && !line.include?("{")
data/lib/souls/cli.rb ADDED
@@ -0,0 +1,6 @@
1
+ require_relative "./cli/docker"
2
+ require_relative "./cli/gcloud"
3
+ require_relative "./cli/release"
4
+
5
+ module Souls
6
+ end
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
data/lib/souls/version.rb CHANGED
@@ -1,4 +1,4 @@
1
1
  module Souls
2
- VERSION = "0.30.7".freeze
2
+ VERSION = "0.30.11".freeze
3
3
  public_constant :VERSION
4
4
  end
@@ -1 +1 @@
1
- 0.9.7
1
+ 0.9.11
@@ -1 +1 @@
1
- 0.9.7
1
+ 0.9.11
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: 0.30.7
4
+ version: 0.30.11
5
5
  platform: ruby
6
6
  authors:
7
7
  - POPPIN-FUMI
@@ -27,19 +27,19 @@ dependencies:
27
27
  - !ruby/object:Gem::Version
28
28
  version: 6.1.4
29
29
  - !ruby/object:Gem::Dependency
30
- name: dotenv
30
+ name: foreman
31
31
  requirement: !ruby/object:Gem::Requirement
32
32
  requirements:
33
33
  - - '='
34
34
  - !ruby/object:Gem::Version
35
- version: 2.7.6
35
+ version: 0.87.2
36
36
  type: :runtime
37
37
  prerelease: false
38
38
  version_requirements: !ruby/object:Gem::Requirement
39
39
  requirements:
40
40
  - - '='
41
41
  - !ruby/object:Gem::Version
42
- version: 2.7.6
42
+ version: 0.87.2
43
43
  - !ruby/object:Gem::Dependency
44
44
  name: paint
45
45
  requirement: !ruby/object:Gem::Requirement
@@ -82,11 +82,8 @@ dependencies:
82
82
  - - '='
83
83
  - !ruby/object:Gem::Version
84
84
  version: 0.3.0
85
- description: |-
86
- SOULs is a Serverless Application Framework with Ruby GraphQL.
87
- SOULs has 3 strains, API, Worker, and Frontend. It can be used in combination according to the purpose.
88
- SOULs Ruby GraphQL API / Worker and Easy to deploy to Google Cloud. No more routing for Backends!
89
- You can focus on your business logic.
85
+ description: SOULs はサーバーレスフルスタックフレームワークです。柔軟な Ruby GraphQL API と Worker はルーティングの必要がありません。クラウド環境への自動デプロイ、CI/CD
86
+ ワークフローを標準装備。開発者がビジネスロジックに集中し、楽しくコードが書けるような環境を目指しています。
90
87
  email:
91
88
  - f.kawasaki@elsoul.nl
92
89
  - s.kishi@elsoul.nl
@@ -127,17 +124,18 @@ files:
127
124
  - lib/souls/api/update/rspec_mutation.rb
128
125
  - lib/souls/api/update/rspec_resolver.rb
129
126
  - lib/souls/api/update/type.rb
130
- - lib/souls/docker.rb
131
- - lib/souls/docker/docker.rb
132
- - lib/souls/gcloud.rb
133
- - lib/souls/gcloud/compute.rb
134
- - lib/souls/gcloud/iam.rb
135
- - lib/souls/gcloud/methods.rb
136
- - lib/souls/gcloud/pubsub.rb
137
- - lib/souls/gcloud/run.rb
127
+ - lib/souls/cli.rb
128
+ - lib/souls/cli/docker.rb
129
+ - lib/souls/cli/docker/docker.rb
130
+ - lib/souls/cli/gcloud.rb
131
+ - lib/souls/cli/gcloud/compute.rb
132
+ - lib/souls/cli/gcloud/iam.rb
133
+ - lib/souls/cli/gcloud/methods.rb
134
+ - lib/souls/cli/gcloud/pubsub.rb
135
+ - lib/souls/cli/gcloud/run.rb
136
+ - lib/souls/cli/release.rb
137
+ - lib/souls/cli/release/release.rb
138
138
  - lib/souls/init.rb
139
- - lib/souls/release.rb
140
- - lib/souls/release/release.rb
141
139
  - lib/souls/version.rb
142
140
  - lib/souls/versions/.souls_api_version
143
141
  - lib/souls/versions/.souls_worker_version
@@ -170,8 +168,6 @@ requirements: []
170
168
  rubygems_version: 3.2.22
171
169
  signing_key:
172
170
  specification_version: 4
173
- summary: SOULs is a Serverless Application Framework with Ruby GraphQL. SOULs has
174
- 3 strains, API, Worker, and Frontend. It can be used in combination according to
175
- the purpose. SOULs Ruby GraphQL API / Worker and Easy to deploy to Google Cloud.
176
- No more routing for Backends! You can focus on your business logic.
171
+ summary: SOULs はサーバーレスフルスタックフレームワークです。柔軟な Ruby GraphQL API Worker はルーティングの必要がありません。クラウド環境への自動デプロイ、CI/CD
172
+ ワークフローを標準装備。開発者がビジネスロジックに集中し、楽しくコードが書けるような環境を目指しています。
177
173
  test_files: []