hephaestus 0.8.14 → 0.8.15

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: c6f1564007f86900d81b992b6df2f93428859cb5a8c6c22a15a5cef29eb7d198
4
- data.tar.gz: bd340377613e44ea895a03871835863cc059cd740c9800c64e56e19b481ecc4a
3
+ metadata.gz: 351e1e10bdbe87d1060a074493567578397261bc988cdfd9ad5e181f183aaadf
4
+ data.tar.gz: 3627d0becfc5c75f52f53d5d14edc7b60d413ed9ba3c07120b4e9f4072e923b7
5
5
  SHA512:
6
- metadata.gz: 4b1399f84f3bb750c0b8de78a729d3e2b47c43bfb8abf5d6f611928162dd2a9c61b7044a39c4348626e2ff819f0eb9b4ff0e67f6dcb78a3c318616a3b42e452c
7
- data.tar.gz: 855af63634afe1b2e6a6cb1af37358270f7508c2e8720426c512f0abb7c8b6e6b7eeae661b8237149906c3f86e806e08aeb53b7896f9eaff50c11b5ce4720d20
6
+ metadata.gz: ca673429b1da48268c99b94f2add25c2e874f45f7ee4f0203b48a1a7d4396fa7088a1b5564ee0108da962112b54f62bd7db92214671a9917a14b33cb65f273ea
7
+ data.tar.gz: 524baa78665bc9c78e270c16d5b12646ff0a749b46471d2b1670df04391c259649a8543666132389decebc6d0445eb861b0fd59aa9479628fafda9076f047a35
data/CHANGELOG.md CHANGED
@@ -1,3 +1,9 @@
1
+ # [v0.8.15] - 15-01-2025
2
+ ## What's Changed
3
+ * Move hephaestus' plug scripts to subfolder + other fixups by @gjtorikian in https://github.com/yettoapp/hephaestus/pull/104
4
+
5
+
6
+ **Full Changelog**: https://github.com/yettoapp/hephaestus/compare/v0.8.14...v0.8.15
1
7
  # [v0.8.14] - 19-12-2024
2
8
  ## What's Changed
3
9
  * Add scripting logic to Hephaestus by @gjtorikian in https://github.com/yettoapp/hephaestus/pull/102
data/bin/hephaestus CHANGED
@@ -101,7 +101,8 @@ end
101
101
  case ARGV[0]
102
102
  when "run"
103
103
  ENV["HEPHAESTUS_CAPITAL_PLUG_NAME"] = `grep 'module Plug\S*' config/application.rb | sed -E 's/module Plug//'`.strip
104
- script_dir = File.join(ENGINE_ROOT, "script")
104
+ ENV["HEPHAESTUS_LOWERCASE_PLUG_NAME"] = ENV["HEPHAESTUS_CAPITAL_PLUG_NAME"].underscore
105
+ script_dir = File.join(ENGINE_ROOT, "script", "templates")
105
106
  puts `#{File.join(script_dir, ARGV[1..-1].join(' '))}`
106
107
  else
107
108
  Hephaestus::AppGenerator.start
data/config/queue.yml CHANGED
@@ -4,9 +4,8 @@ default: &default
4
4
  batch_size: 500
5
5
  workers:
6
6
  - queues: [plug_<%= plug_shortname %>_high_priority*, plug_<%= plug_shortname %>_mid_priority*, plug_<%= plug_shortname %>_low_priority*]
7
- threads: 5
8
7
  - queues: "plug_<%= plug_shortname %>_*" # default, mailers, etc
9
- threads: 3
8
+ threads: 1
10
9
 
11
10
  development:
12
11
  <<: *default
@@ -10,12 +10,12 @@ module Hephaestus
10
10
  "plug-#{Rails.application.class.module_parent.name.underscore[5..-1]}"
11
11
  end
12
12
 
13
- # like, `slack`, github, or `html_proofer`
13
+ # like, `slack`, `github`, or `html_proofer`
14
14
  def plug_name
15
15
  app_name.split("-", 2).last
16
16
  end
17
17
 
18
- # like, `Slack`, `GitHub`, or `html_proofer
18
+ # like, `Slack`, `GitHub`, or `HtmlProofer`
19
19
  def capital_plug_name
20
20
  plug_name.camelcase
21
21
  end
@@ -71,7 +71,7 @@ module Hephaestus
71
71
 
72
72
  def op_read(label)
73
73
  %x(#{include_sudo?}op read "#{label}").chomp.tap do
74
- raise "Failed to fetch `#{label}` from 1Password" unless $CHILD_STATUS.success?
74
+ Rails.logger.error("Failed to fetch `#{label}` from 1Password") && return unless $CHILD_STATUS.success?
75
75
  end
76
76
  end
77
77
 
@@ -41,6 +41,7 @@ module Hephaestus
41
41
  else
42
42
  case validated_request.error.type
43
43
  when :not_found
44
+ Rails.logger.error("Request path not found. Is it defined in openai.json? ") if print_user_api_errors?
44
45
  [Hephaestus::HTTP::NOT_FOUND_I, { "Content-Type" => "application/json" }, [format_str("Not Found")]]
45
46
  else
46
47
  error_message = if validated_request.error.errors.present?
@@ -2,7 +2,7 @@
2
2
  # frozen_string_literal: true
3
3
 
4
4
  module Hephaestus
5
- VERSION = "0.8.14"
5
+ VERSION = "0.8.15"
6
6
  RAILS_VERSION = ">= 8.0"
7
7
  RUBY_VERSION = File
8
8
  .read("#{File.dirname(__FILE__)}/../../.ruby-version")
@@ -1,5 +1,5 @@
1
1
  {
2
- "CreateAppMessage": {
2
+ "Create<%= capital_plug_name %>Message": {
3
3
  "type": "object",
4
4
  "required": [
5
5
  "yetto"
@@ -77,7 +77,7 @@
77
77
  },
78
78
  "additionalProperties": false
79
79
  },
80
- "ConfigureApp": {
80
+ "CreatedPlugInstallation": {
81
81
  "type": "object",
82
82
  "required": [
83
83
  "yetto"
@@ -10,7 +10,7 @@
10
10
  "content": {
11
11
  "application/json": {
12
12
  "schema": {
13
- "$ref": "../../components/schemas/yetto.json#/ConfigureApp"
13
+ "$ref": "../../components/schemas/yetto.json#/CreatedPlugInstallation"
14
14
  }
15
15
  }
16
16
  }
@@ -294,3 +294,4 @@ app/javascript/controllers/*.js
294
294
  !app/javascript/controllers/index.js
295
295
 
296
296
  security_results.json
297
+ vendor/cache/
@@ -0,0 +1,5 @@
1
+ #!/usr/bin/env bash
2
+
3
+ set -e
4
+
5
+ bundle exec hephaestus run edit-credentials "$1"
@@ -4,4 +4,4 @@ set -e
4
4
 
5
5
  hostname="$(hostname | tr '[:upper:]' '[:lower:]' | tr '.' '-')"
6
6
 
7
- ngrok http --region=us --domain=${hostname}-plug-<%= plug_name %>.ngrok.io 6661
7
+ ngrok http --domain=${hostname}-plug-<%= plug_name %>.ngrok.io 6661
@@ -176,13 +176,14 @@ class <%= capital_plug_name %>ControllerTest < ActionDispatch::IntegrationTest
176
176
  assert_response :bad_request
177
177
  end
178
178
 
179
- test "webhook passes to job when issue_comment is created" do
180
- assert_enqueued_with(job: Process<%= capital_plug_name %>IssueCommentJob) do
181
- plug(:post, "/webhook", body: @valid_issue_comment_created_webhook_body, headers: { "HTTP_X_GITHUB_EVENT" => "issue_comment", "HTTP_X_HUB_SIGNATURE_256" => auth_header(@valid_issue_comment_created_webhook_body) })
182
- end
179
+ # TODO: Add your own controller tests here; for example
183
180
 
184
- assert_response :ok
185
- end
181
+ # test "webhook passes to job when issue_comment is created" do
182
+ # assert_enqueued_with(job: Process<%= capital_plug_name %>IssueCommentJob) do
183
+ # plug(:post, "/webhook", body: @valid_issue_comment_created_webhook_body, headers: { "HTTP_X_GITHUB_EVENT" => "issue_comment", "HTTP_X_HUB_SIGNATURE_256" => auth_header(@valid_issue_comment_created_webhook_body) })
184
+ # end
185
+ #
186
+ # assert_response :ok
187
+ # end
186
188
 
187
- # TODO: Add your own controller tests here
188
189
  end
@@ -104,7 +104,7 @@ class YettoControllerTest < ActionDispatch::IntegrationTest
104
104
  assert_response :bad_request
105
105
  end
106
106
 
107
- test "it performs some job to do something to your platform" do
107
+ test "it performs **SomeJob** to **do something** to your platform" do
108
108
  incoming_body = @after_create_message
109
109
 
110
110
  job_args = {
@@ -0,0 +1,7 @@
1
+ # typed: false
2
+ # frozen_string_literal: true
3
+
4
+ require "test_helper"
5
+
6
+ class SomeJobTest < ActiveJob::TestCase
7
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hephaestus
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.14
4
+ version: 0.8.15
5
5
  platform: ruby
6
6
  authors:
7
7
  - Garen Torikian
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-12-19 00:00:00.000000000 Z
11
+ date: 2025-01-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bootsnap
@@ -377,7 +377,7 @@ dependencies:
377
377
  description: 'Hephaestus is a Rails generator to create plugs for Yetto.
378
378
 
379
379
  '
380
- email:
380
+ email:
381
381
  executables:
382
382
  - hephaestus
383
383
  extensions: []
@@ -445,9 +445,9 @@ files:
445
445
  - lib/hephaestus/version.rb
446
446
  - lib/tasks/hephaestus_tasks.rake
447
447
  - lib/tasks/rubocop.rake
448
- - script/edit-credentials
449
- - script/setup-vault
450
- - script/vault.json
448
+ - script/templates/edit-credentials
449
+ - script/templates/setup-vault
450
+ - script/templates/vault.json
451
451
  - templates/app/controllers/app_controller.rb.tt
452
452
  - templates/app/controllers/application_controller.rb
453
453
  - templates/app/controllers/concerns/authable.rb.tt
@@ -495,7 +495,7 @@ files:
495
495
  - templates/lib/schemas/api/2023-03-06/components/parameters/plugInstallation.json
496
496
  - templates/lib/schemas/api/2023-03-06/components/schemas/plug.json
497
497
  - templates/lib/schemas/api/2023-03-06/components/schemas/responses.json
498
- - templates/lib/schemas/api/2023-03-06/components/schemas/yetto.json
498
+ - templates/lib/schemas/api/2023-03-06/components/schemas/yetto.json.tt
499
499
  - templates/lib/schemas/api/2023-03-06/openapi.json
500
500
  - templates/lib/schemas/api/2023-03-06/paths/app.json
501
501
  - templates/lib/schemas/api/2023-03-06/paths/yetto/message_created.json
@@ -517,6 +517,7 @@ files:
517
517
  - templates/root/hephaestus_ruby-version
518
518
  - templates/script/docker-build-prod.tt
519
519
  - templates/script/docker-run.tt
520
+ - templates/script/edit-credentials
520
521
  - templates/script/hmac_text
521
522
  - templates/script/licenses
522
523
  - templates/script/ngrok.tt
@@ -531,6 +532,7 @@ files:
531
532
  - templates/test/fixtures/files/fake_pem_file/fake.pem
532
533
  - templates/test/fixtures/files/plug_installation_settings/invalid.json
533
534
  - templates/test/fixtures/files/plug_installation_settings/valid.json
535
+ - templates/test/jobs/some_job_test.rb
534
536
  - templates/test/support/rails.rb
535
537
  - templates/test/support/webmocks/app_webmock.rb.tt
536
538
  - templates/test/test_helper.rb
@@ -540,7 +542,7 @@ homepage: http://github.com/yettoapp/hephaestus
540
542
  licenses:
541
543
  - MIT
542
544
  metadata: {}
543
- post_install_message:
545
+ post_install_message:
544
546
  rdoc_options:
545
547
  - "--charset=UTF-8"
546
548
  require_paths:
@@ -558,7 +560,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
558
560
  version: 3.4.7
559
561
  requirements: []
560
562
  rubygems_version: 3.5.22
561
- signing_key:
563
+ signing_key:
562
564
  specification_version: 4
563
565
  summary: Generate a Rails app that can be used to create plugs for Yetto.
564
566
  test_files: []
File without changes
File without changes