Page MenuHomeDevCentral

D47.id143.diff
No OneTemporary

D47.id143.diff

diff --git a/Dockerfile b/Dockerfile
new file mode 100644
--- /dev/null
+++ b/Dockerfile
@@ -0,0 +1,32 @@
+#
+# Nasqueron - Arcanist image
+#
+
+FROM nasqueron/php-cli
+MAINTAINER Sébastien Santoro aka Dereckson <dereckson+nasqueron-docker@espace-win.org>
+
+#
+# Prepare the container
+#
+
+RUN apt-get update && apt-get install -y \
+ mercurial subversion openssh-client \
+ --no-install-recommends && rm -r /var/lib/apt/lists/*
+
+RUN cd /opt && \
+ git clone https://github.com/phacility/libphutil.git && \
+ git clone https://github.com/phacility/arcanist.git && \
+ cd /home/app && \
+ ln -s /opt/arcanist/bin/arc /usr/local/bin/arc && \
+ ln -s /opt/config/gitconfig /root/.gitconfig && \
+ ln -s /opt/config/arcrc /root/.arcrc
+
+COPY files /
+
+#
+# Docker properties
+#
+
+VOLUME ["/opt/config", "/opt/workspace"]
+WORKDIR /opt/workspace
+CMD ["/usr/local/bin/arc"]
diff --git a/README.md b/README.md
new file mode 100644
--- /dev/null
+++ b/README.md
@@ -0,0 +1,56 @@
+Arcanist as a Docker container
+==============================
+
+We provide a `nasqueron/arcanist` image to run **Arcanist** as a Docker container.
+
+Our goal is to be able to use `arc` when we tweak a Docker image on a Docker engine server, where PHP isn't installed. To have an Arcanist image allows us not to install PHP everywhere.
+
+Installation
+------------
+
+You only have to pull our image, then invoke a shell or Arc directly:
+
+```
+docker pull nasqueron/arcanist
+
+docker run -it --rm nasqueron/arcanist bash
+docker run -it --rm nasqueron/arcanist arc anoid
+```
+
+Configuration and workspace volumes
+-----------------------------------
+
+We provide two volumes, one to store the configuration (.arcrc, .gitconfig), one to store the repository you want to work with.
+
+You probably want to pass the current directory as workspace directory. Use `pwd` (Docker won' t like `.`, and the Docker client could be on another machine than the server by the way).
+
+To store the configuration, create a `~/.arc` folder with:
+
+ - `~/.arc/arcrc`: a copy of your .arcrc file
+ - `~/.arc/gitconfig` : a copy of your .gitconfig file
+
+I want an arc command
+---------------------
+
+It could be convenient to create a wrapper script in `/usr/local/bin/arc` to be able to directly write `arc diff`:
+
+```
+cat > /usr/local/bin/arc
+#!/bin/sh
+
+if [ "$1" = "shell" ]; then
+ shift
+ COMMAND=bash
+else
+ mkdir -p ~/.arc
+ COMMAND=arc
+fi
+
+docker run -it --rm -v ~/.arc:/opt/config -v `pwd`:/opt/workspace nasqueron/arcanist $COMMAND $*
+```
+
+You can now use `arc shell` to get an interactive shell with your local directory content sent to the container, and `arc <whatever>` in other cases.
+
+> **Note:**
+
+> If you use `arc call-conduit` you can't use -it, as you need to pass stdin to the command.
diff --git a/files/opt/libphutil/src/parser/xhpast/bin/xhpast b/files/opt/libphutil/src/parser/xhpast/bin/xhpast
new file mode 100755
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000
GIT binary patch
literal 0
Hc$@<O00001
literal 0
Hc$@<O00001

File Metadata

Mime Type
text/plain
Expires
Mon, Jan 20, 13:21 (20 h, 12 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
2362512
Default Alt Text
D47.id143.diff (3 KB)

Event Timeline