File tree Expand file tree Collapse file tree 15 files changed +148
-0
lines changed
src/std/templates/microservice-aws-github Expand file tree Collapse file tree 15 files changed +148
-0
lines changed Original file line number Diff line number Diff line change
1
+ {
2
+ outputs = { std , ...} @ inputs :
3
+ std . growOn {
4
+ inherit inputs ;
5
+ cellsFrom = ./ops ;
6
+ cellBlocks = with std . blockTypes ; [
7
+ # Software Delivery Lifecycle (Packaging Layers)
8
+ # For deeper context, please consult:
9
+ # https://std.divnix.com/patterns/four-packaging-layers.html
10
+ ( installables "packages" { ci . build = true ; } )
11
+ ( runnables "operables" )
12
+ ( containers "oci-images" { ci . publish = true ; } )
13
+ ( kubectl "deployments" { ci . apply = true ; } )
14
+ ] ;
15
+ } ;
16
+
17
+ inputs . nixpkgs . url = "github:nixos/nixpkgs/nixpkgs-unstable" ;
18
+
19
+ inputs = {
20
+ std . url = "github:divnix/std" ;
21
+ std . inputs . nixpkgs . follows = "nixpkgs" ;
22
+ std . inputs . n2c . follows = "n2c" ;
23
+ n2c . url = "github:nlewo/nix2container" ;
24
+ n2c . inputs . nixpkgs . follows = "std/nixpkgs" ;
25
+ } ;
26
+ }
Original file line number Diff line number Diff line change
1
+ let
2
+ inherit ( inputs . std ) dmerge ;
3
+ inherit ( inputs . std . inputs ) haumea ;
4
+ inherit ( inputs . std . lib . ops ) readYAML ;
5
+
6
+ loadYaml = _ : _ : readYAML ;
7
+ baseline = with haumea . lib ;
8
+ load {
9
+ src = ./deployments ;
10
+ loader = [ ( matchers . regex ''^.+\.(yaml|yml)'' loadYaml ) ] ;
11
+ } ;
12
+ in {
13
+ my-srv-a = dmerge baseline . my-srv-a {
14
+ meta . description = "Development Environment for my-srv-a" ;
15
+ deployment = {
16
+ spec . template . spec . containers = dmerge . updateOn "name" [
17
+ {
18
+ name = "my-srv-a" ;
19
+ image = cell . oci-images . my-srv-a . image . name ;
20
+ }
21
+ ] ;
22
+ } ;
23
+ } ;
24
+ }
Original file line number Diff line number Diff line change
1
+ apiVersion : apps/v1
2
+ kind : Deployment
Original file line number Diff line number Diff line change
1
+ apiVersion : networking.k8s.io/v1
2
+ kind : Ingress
Original file line number Diff line number Diff line change
1
+ apiVersion : v1
2
+ kind : Service
Original file line number Diff line number Diff line change
1
+ let
2
+ inherit ( inputs ) std ;
3
+ in {
4
+ my-srv-a = std . lib . ops . mkStandardOCI {
5
+ name = "ghcr.io/myorg/myrepo/my-srv-a" ;
6
+ operable = cell . operables . my-srv-a ;
7
+ meta . description = "Minimal OCI Image for my-srv-a" ;
8
+ } ;
9
+ }
Original file line number Diff line number Diff line change
1
+ let
2
+ inherit ( inputs ) std ;
3
+ inherit ( inputs . nixpkgs ) lib ;
4
+ in {
5
+ my-srv-a = std . lib . ops . mkOperable {
6
+ package = cell . packages . my-srv-a ;
7
+ runtimeScript = lib . getExe cell . packages . my-srv-a ;
8
+ meta . description = "A thin warpper around my-srv-a binary executable" ;
9
+ } ;
10
+ }
Original file line number Diff line number Diff line change
1
+ let
2
+ inherit ( inputs ) nixpkgs std self ;
3
+
4
+ src = std . incl self [
5
+ "folder"
6
+ "my.file"
7
+ ] ;
8
+ in {
9
+ my-srv-a = {
10
+ meta . description = "my-srv-a binary executable" ;
11
+ } ;
12
+ }
Original file line number Diff line number Diff line change
1
+ let
2
+ inherit ( inputs . std ) dmerge ;
3
+ inherit ( inputs . std . inputs ) haumea ;
4
+ inherit ( inputs . std . lib . ops ) readYAML ;
5
+
6
+ loadYaml = _ : _ : readYAML ;
7
+ baseline = with haumea . lib ;
8
+ load {
9
+ src = ./deployments ;
10
+ loader = [ ( matchers . regex ''^.+\.(yaml|yml)'' loadYaml ) ] ;
11
+ } ;
12
+ in {
13
+ my-srv-a = dmerge baseline . my-srv-a {
14
+ meta . description = "Development Environment for my-srv-a" ;
15
+ deployment = {
16
+ spec . template . spec . containers = dmerge . updateOn "name" [
17
+ {
18
+ name = "my-srv-a" ;
19
+ image = cell . oci-images . my-srv-a . image . name ;
20
+ }
21
+ ] ;
22
+ } ;
23
+ } ;
24
+ }
Original file line number Diff line number Diff line change
1
+ apiVersion : apps/v1
2
+ kind : Deployment
You can’t perform that action at this time.
0 commit comments