Skip to content

Instantly share code, notes, and snippets.

@burke

burke/ru.nix

Created Jun 8, 2020
Embed
What would you like to do?
{ config, pkgs, lib, ... }:
{
rune.project.name = "shopify-pay";
rune.framework.rails.enable = true;
aspect.packages.include = with pkgs; [
geolite2 ngrok mysqlClient57 overmind watchman toxiproxy v8
];
rune.project.repoName = "pay";
aspect.developmentServer.hostname = "pay.myshopify.io";
aspect.developmentServer.port = 40018;
aspect.gitHooks.pre-commit = [ ./bin/git/pre-commit.sh ];
aspect.customEnv = {
KARAFKA_BOOT_FILE = "./shopify_pay_karafka/config/application.rb";
};
aspect.integrations = {
shop-accounts = {};
cardsink-copy = {};
cardserver-copy = {};
hosted-fields-copy = {};
};
aspect.commands = {
server.default = {
description = "Start overmind (rails server, karafka, sidekiq)";
run = "overmind start -f Procfile.dev";
};
karafka.default = { run = "karafka"; };
sidekiq.default = {
run = "sidekiq -q payment_create -q payment_poll -q mailers -q default -q maintenance -q kafka";
};
ngrok.default = {
description = "Starts the ngrok tunnel";
run = "ngrok start -config config/ngrok.yml shopify-pay";
};
staging.default = {
description = "Test your branch on staging";
run = ''
git push origin +@:staging --no-verify
open ${config.aspect.shipit.stagingUrl}
'';
};
};
}
@roberth

This comment has been minimized.

Copy link

@roberth roberth commented Jun 10, 2020

Hi Burke!
I think I had the same idea with project.nix. It's in an experimental stage as of now with support for pre-commit-hooks.nix and IOHK's haskell.nix.
Is runix published somewhere?
Do you think we could standardize a core of certain module options so the community can contribute their own tooling and language integrations?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment