Skip to content

Instantly share code, notes, and snippets.

@nt1m
Last active July 20, 2017 14:46
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save nt1m/d6d98cc9d83ae072d41842bcf396ae05 to your computer and use it in GitHub Desktop.
Save nt1m/d6d98cc9d83ae072d41842bcf396ae05 to your computer and use it in GitHub Desktop.
janitor.json configurations
{
"name": "Chromium",
"description": "The Chromium browser.",
"icon": "https://janitor.technology/img/chromium.svg",
"docker": {
"image": "janx/chromium"
},
"ports": {
"22": {
"proxy": "none"
},
"8088": {
"proxy": "https",
"label": "VNC"
},
"8089": {
"proxy": "https",
"label": "Cloud9"
}
},
"scripts": {
"ninja -C out/Default chrome (build)": "ninja -C out/Default chrome",
"out/Default/chrome (run)": "out/Default/chrome",
"Update source code": "gclient sync -j18"
}
}
{
"name": "Firefox (git)",
"description": "The Firefox browser (git flavour)",
"icon": "https://janitor.technology/img/firefox.svg",
"docker": {
"image": "JanitorTechnology/firefox-git:base"
},
"ports": {
"22": {
"proxy": "none"
},
"8088": {
"proxy": "https",
"label": "VNC"
},
"8089": {
"proxy": "https",
"label": "Cloud9"
}
},
"previewUrls": {
"VNC": "https://${HOSTNAME}/${CONTAINER}/8089/vnc.html"
},
"scripts": {
"./mach build": "./mach build",
"./mach build faster": "./mach build faster",
"./mach build binaries": "./mach build binaries",
"./mach run": {
"cmd": "./mach run",
"openPreview": "VNC"
},
"./mach clobber": "./mach clobber",
"Send to code review": "git bz attach -e origin/master..HEAD",
"Update source code": "git fetch origin && git rebase origin/master"
}
}
{
"name": "Firefox (hg)",
"description": "The Firefox browser (hg flavour)",
"icon": "https://janitor.technology/img/firefox.svg",
"docker": {
"image": "JanitorTechnology/firefox-hg:base"
},
"ports": {
"22": {
"proxy": "none"
},
"8088": {
"proxy": "https",
"label": "VNC"
},
"8089": {
"proxy": "https",
"label": "Cloud9"
}
},
"previewUrls": {
"VNC": "https://${HOSTNAME}/${CONTAINER}/8089/vnc.html"
},
"scripts": {
"./mach build": "./mach build",
"./mach build faster": "./mach build faster",
"./mach build binaries": "./mach build binaries",
"./mach run": {
"cmd": "./mach run",
"openPreview": "VNC"
},
"./mach clobber": "./mach clobber",
"Send to code review": "hg push review"
}
}
{
"name": "Janitor",
"description": "The fastest development system in the world.",
"icon": "https://janitor.technology/img/janitor.svg",
"docker": {
"image": "janx/janitor",
"path": "/home/user/janitor"
},
"ports": {
"22": {
"label": "SSH",
"proxy": "none"
},
"8080": {
"label": "Preview",
"proxy": "https"
},
"8088": {
"label": "VNC",
"proxy": "https"
},
"8089": {
"label": "Cloud9",
"proxy": "https"
}
},
"scripts": {
"node app": "node app",
"npm run watch": "npm run watch",
"npm run lint": "npm run lint",
"npm run lint-fix": "npm run lint-fix",
"npm test": "npm test",
"Send to code review": "hub pull-request"
}
}
{
"name": "Servo",
"description": "The blasing rendering engine.",
"icon": "https://janitor.technology/img/servo.svg",
"docker": {
"image": "JanitorTechnology/servo"
},
"ports": {
"22": {
"proxy": "none"
},
"8088": {
"proxy": "https",
"label": "VNC"
},
"8089": {
"proxy": "https",
"label": "Cloud9"
}
},
"previewUrls": {
"VNC": "https://${HOSTNAME}/${CONTAINER}/8089/vnc.html"
},
"scripts": {
"./mach build --dev": "./mach build --dev",
"./mach build --release": "./mach build --release",
"./mach run --dev": "./mach run --dev",
"./mach run --release": "./mach run --release",
"./mach check": "./mach check",
"Send to code review": "hub pull-request"
}
}
{
"name": "Thunderbird",
"description": "The email client by Mozilla foundation.",
"icon": "https://janitor.technology/img/thunderbird.svg",
"docker": {
"image": "JanitorTechnology/thunderbird:base"
},
"ports": {
"22": {
"proxy": "none"
},
"8088": {
"proxy": "https",
"label": "VNC"
},
"8089": {
"proxy": "https",
"label": "Cloud9"
}
},
"previewUrls": {
"VNC": "https://${HOSTNAME}/${CONTAINER}/8089/vnc.html"
},
"scripts": {
"./mozilla/mach build": "./mozilla/mach build",
"./mozilla/mach run": "./mozilla/mach run",
"Update sources": "python client.py checkout"
}
}
@jankeromnes
Copy link

jankeromnes commented Jul 19, 2017

Thanks a lot for these config files!

Please have a look at this older issue for other scripts examples: JanitorTechnology/janitor#12

I have a few nits:

chromium

  • The Docker image is janx/chromium for now. Eventually, we should maybe move all images under janitortechnology/chromium (I'll lose stats, but it's fairer to everyone).
  • Please add the following scripts:
    • "ninja -C out/Default chrome" (build)
    • "out/Default/chrome" (run)
    • "Update source code": "gclient sync -j18"

firefox-git

  • The description is weird (what is "the great foxfire"?)
  • The current Docker image in use is janx/firefox (the janx/firefox:base tag is only used internally for incremental image updates)
  • Please remove the redundant "type": "preview" we had before having "openPreview": "VNC"
  • Please add the following scripts:
    • "Send to code review": "git bz attach -e origin/master..HEAD" (this will get updated to use cinnabar in the future)
    • "Update source code": "git fetch origin && git rebase origin/master"

firefox-hg

  • The current Docker image in use is ntim/firefox-hg (and ntim/firefox-hg:base internally). Also, are you planning on pushing it to Docker Hub? Otherwise I can simply rename it to janx/firefox-hg and push it for you (but keep your name in the MAINTAINER field).

thunderbird

  • Please add the following scripts:
    • "Update sources": "python client.py checkout"
    • ./mozilla/mach build
    • ./mozilla/mach run

janitor

  • Please make script names more explicit & less confusing by calling them like their commands, i.e. node app, npm run watch, etc.
  • The test command can be shortened to npm test instead of npm run test
  • It's so cool to have the Send to code review feature! I tested it, and we don't even need to mess with Personal Access Tokens yet, it's already super convenient.

Also, visually, the run configurations look like this:
run-configs

  • The Run button was initially disabled. Maybe setting the first command as the default one didn't work?
  • Is there a way to add a separator between commands like node app, npm test, etc, and workflow commands like Send to code review?

@nt1m
Copy link
Author

nt1m commented Jul 19, 2017

The Run button was initially disabled. Maybe setting the first command as the default one didn't work?

Worked fine when I tested the plugin, maybe it's related to other things in the workspace config ?

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