Skip to content

Commit 879f07a

Browse files
authored
Merge pull request #184 from input-output-hk/devshell
imp: adds default, dev devshell
2 parents 6339b43 + 71ce154 commit 879f07a

File tree

10 files changed

+148
-29
lines changed

10 files changed

+148
-29
lines changed

.editorconfig

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,9 @@ charset = utf-8
99
trim_trailing_whitespace = true
1010
insert_final_newline = true
1111

12+
[Cargo.lock]
13+
indent_size = unset
14+
1215
# Use 4 spaces for the Python files
1316
[*.py]
1417
indent_size = 4

.envrc

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
#! /bin/sh
2+
3+
# default devshell target includes pkgs for code formatting and commit hooks
4+
# dev devshell target includes rust dev and hashicorp/cert related pkgs
5+
6+
[ -f .envrc.local ] && source_env .envrc.local
7+
DEVSHELL_TARGET=${DEVSHELL_TARGET:-default}
8+
9+
. "$(nix eval .#__std.direnv_lib)"
10+
use std nix "//automation/devshells:${DEVSHELL_TARGET}"

flake.lock

Lines changed: 102 additions & 13 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

modules/terraform.nix

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -417,7 +417,7 @@
417417
cidr = net.cidr.subnet 8 idx cidr;
418418
availabilityZone =
419419
var
420-
"element(module.instance_types_to_azs.availability_zones, ${toString idx})";
420+
"element(module.instance_types_to_azs.availability_zones, ${toString idx})";
421421
}))
422422
lib.listToAttrs
423423
];

modules/terraform/clients.nix

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -195,8 +195,8 @@ in {
195195
resource.aws_s3_bucket_object = lib.flip lib.mapAttrs' config.cluster.awsAutoScalingGroups (name: group:
196196
lib.nameValuePair "${name}-flake" rec {
197197
bucket = config.cluster.s3Bucket;
198-
key = with config; "infra/secrets/${cluster.name}/${cluster.kms}/source/${name}-source.tar.xz";
199-
etag = var ''filemd5("${source}")'';
198+
key = with config; "infra/secrets/${cluster.name}/${cluster.kms}/source/${name}-source.tar.xz";
199+
etag = var ''filemd5("${source}")'';
200200
source = "${pkgs.runCommand "source.tar.xz" {} ''
201201
tar cvf $out -C ${config.cluster.flakePath} .
202202
''}";
@@ -344,7 +344,8 @@ in {
344344
requesterMeshPeeringOptions = mapAwsAsgVpcPeers (link:
345345
lib.nameValuePair "${link.connector}-connect-${link.accepter}" {
346346
provider = awsProviderFor link.connector;
347-
vpc_peering_connection_id = id
347+
vpc_peering_connection_id =
348+
id
348349
"aws_vpc_peering_connection_accepter.${link.accepter}-accept-${link.connector}";
349350

350351
requester = {allow_remote_vpc_dns_resolution = true;};
@@ -388,7 +389,7 @@ in {
388389
name = group.uid;
389390
inherit (group.iam.instanceProfile) path;
390391
role = var "data.aws_iam_role.${config.cluster.iam.roles.client.uid}.name";
391-
lifecycle = [{ create_before_destroy = true; }];
392+
lifecycle = [{create_before_destroy = true;}];
392393
});
393394

394395
data.aws_iam_role = let
@@ -411,7 +412,8 @@ in {
411412
inherit (policy) condition;
412413
});
413414
};
414-
in lib.mapAttrs' op role.policies;
415+
in
416+
lib.mapAttrs' op role.policies;
415417

416418
resource.aws_iam_role_policy = let
417419
# deploy for client role
@@ -422,7 +424,8 @@ in {
422424
role = id "data.aws_iam_role.${role.uid}";
423425
policy = var "data.aws_iam_policy_document.${policy.uid}.json";
424426
};
425-
in lib.mapAttrs' op role.policies;
427+
in
428+
lib.mapAttrs' op role.policies;
426429

427430
resource.aws_security_group =
428431
lib.flip lib.mapAttrsToList config.cluster.awsAutoScalingGroups

modules/terraform/core.nix

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -230,12 +230,12 @@ in {
230230
"${client.uid}" = {
231231
name = "core-${client.uid}";
232232
assume_role_policy = client.assumePolicy.tfJson;
233-
lifecycle = [{ create_before_destroy = true; }];
233+
lifecycle = [{create_before_destroy = true;}];
234234
};
235235
"${core.uid}" = {
236236
name = core.uid;
237237
assume_role_policy = core.assumePolicy.tfJson;
238-
lifecycle = [{ create_before_destroy = true; }];
238+
lifecycle = [{create_before_destroy = true;}];
239239
};
240240
};
241241

nix/automation/devshells.nix

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,14 @@
2626
]);
2727
in {
2828
default = std.lib.mkShell {
29+
imports = [
30+
capsules.base
31+
capsules.tools
32+
capsules.integrations
33+
capsules.hooks
34+
];
35+
};
36+
cli = std.lib.mkShell {
2937
packages = rust-dev-pkgs;
3038
language.rust = {
3139
packageSet = rustPlatform;
@@ -52,5 +60,14 @@ in {
5260
capsules.integrations
5361
capsules.hooks
5462
];
63+
commands = let
64+
withCategory = category: attrset: attrset // {inherit category;};
65+
bitte = withCategory "bitte";
66+
in
67+
with nixpkgs; [
68+
(bitte {package = awscli;})
69+
(bitte {package = cfssl;})
70+
(bitte {package = cue;})
71+
];
5572
};
5673
}

nix/cli/packages/cli/.envrc

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
11
#! /bin/sh
22

3-
source_url \
4-
"https://raw.githubusercontent.com/divnix/std/a1efa1a9009a5e0ae685b62593d98925807dde7e/direnv_lib.sh" \
5-
"sha256-JkRxy5PilGkOQcI/KaiZeyJKUTMTKduQwsw/ayUyz4k="
6-
use std nix //automation/devshells:default
3+
. "$(nix eval .#__std.direnv_lib)"
4+
use std ../../../../nix //automation/devshells:cli

nix/cli/packages/cli/devshell.nix

Lines changed: 0 additions & 1 deletion
This file was deleted.

profiles/glusterfs/client.nix

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@ in {
1616

1717
systemd.mounts = [
1818
(lib.mkIf cfg.enable {
19-
after = [ "consul.service" "dnsmasq.service" ];
20-
wants = [ "consul.service" "dnsmasq.service" ];
19+
after = ["consul.service" "dnsmasq.service"];
20+
wants = ["consul.service" "dnsmasq.service"];
2121
what = "glusterd.service.consul:/gv0";
2222
where = "/mnt/gv0";
2323
type = "glusterfs";

0 commit comments

Comments
 (0)