Skip to content

Commit 4e8deaa

Browse files
authored
Merge pull request #639 from alphagov/CM-935-create-api-engine-within-cbm
CM-935 create API engine
2 parents 694f644 + 41f5d73 commit 4e8deaa

9 files changed

Lines changed: 38 additions & 1 deletion

File tree

Gemfile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
source "https://rubygems.org"
22

3+
gem "api", path: "engines/api"
34
gem "babosa"
45
gem "block_preview", path: "engines/block_preview"
56
gem "bootsnap", require: false

Gemfile.lock

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
PATH
2+
remote: engines/api
3+
specs:
4+
api (0.0.1)
5+
16
PATH
27
remote: engines/block_preview
38
specs:
@@ -937,6 +942,7 @@ PLATFORMS
937942
x86_64-linux-musl
938943

939944
DEPENDENCIES
945+
api!
940946
babosa
941947
benchmark
942948
better_errors
@@ -1018,6 +1024,7 @@ CHECKSUMS
10181024
activestorage (8.1.3) sha256=0564ce9309143951a67615e1bb4e090ee54b8befed417133cae614479b46384d
10191025
activesupport (8.1.3) sha256=21a5e0dfbd4c3ddd9e1317ec6a4d782fa226e7867dc70b0743acda81a1dca20e
10201026
addressable (2.9.0) sha256=7fdf6ac3660f7f4e867a0838be3f6cf722ace541dd97767fa42bc6cfa980c7af
1027+
api (0.0.1)
10211028
ast (2.4.3) sha256=954615157c1d6a382bc27d690d973195e79db7f55e9765ac7c481c60bdb4d383
10221029
babosa (2.1.0) sha256=36bdf8d7d0e90180ee03386e7f81cd70ad5e9cc53c4cbca79641fa6624de12b4
10231030
base64 (0.3.0) sha256=27337aeabad6ffae05c265c450490628ef3ebd4b67be58257393227588f5a97b
@@ -1336,4 +1343,4 @@ CHECKSUMS
13361343
zeitwerk (2.7.5) sha256=d8da92128c09ea6ec62c949011b00ed4a20242b255293dd66bf41545398f73dd
13371344

13381345
BUNDLED WITH
1339-
4.0.10
1346+
4.0.10

config/routes.rb

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
mount FactCheck::Engine => "/fact-check"
99
mount BlockPreview::Engine => "/preview"
1010
mount GovukSidekiq::GdsSsoMiddleware, at: "/sidekiq"
11+
mount Api::Engine => "/api"
1112

1213
scope via: :all do
1314
match "/400", to: "errors#bad_request"

engines/api/api.gemspec

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
Gem::Specification.new do |spec|
2+
spec.name = "api"
3+
spec.version = "0.0.1"
4+
spec.authors = ["GOV.UK Dev"]
5+
spec.email = ["govuk-dev@digital.cabinet-office.gov.uk"]
6+
spec.summary = "Rails engine for Content Block Manager API."
7+
spec.license = "MIT"
8+
9+
spec.files = Dir.chdir(File.expand_path(__dir__)) do
10+
Dir["{app,config,db,lib}/**/*"]
11+
end
12+
end
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
module Api
2+
class ApplicationController < ActionController::API
3+
end
4+
end

engines/api/config/routes.rb

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
Api::Engine.routes.draw do
2+
end

engines/api/lib/api.rb

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
require "api/engine"
2+
3+
module Api
4+
end

engines/api/lib/api/engine.rb

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
module Api
2+
class Engine < ::Rails::Engine
3+
isolate_namespace Api
4+
end
5+
end

engines/api/package.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
enforce_privacy: strict

0 commit comments

Comments
 (0)