{"id":21974418,"url":"https://github.com/abdes/submodule-docker-dev-workflow-arango","last_synced_at":"2026-04-30T18:32:43.252Z","repository":{"id":120155515,"uuid":"63486985","full_name":"abdes/submodule-docker-dev-workflow-arango","owner":"abdes","description":"Arango submodule for the example application using the git submodules and docker development workflow (submodule-docker-dev-workflow)","archived":false,"fork":false,"pushed_at":"2016-07-18T09:37:08.000Z","size":30,"stargazers_count":3,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-22T23:41:25.598Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/abdes.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-07-16T14:37:47.000Z","updated_at":"2018-05-16T11:15:23.000Z","dependencies_parsed_at":null,"dependency_job_id":"185bf566-cdaf-4bc9-8c60-89690fa6b6bb","html_url":"https://github.com/abdes/submodule-docker-dev-workflow-arango","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/abdes/submodule-docker-dev-workflow-arango","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abdes%2Fsubmodule-docker-dev-workflow-arango","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abdes%2Fsubmodule-docker-dev-workflow-arango/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abdes%2Fsubmodule-docker-dev-workflow-arango/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abdes%2Fsubmodule-docker-dev-workflow-arango/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/abdes","download_url":"https://codeload.github.com/abdes/submodule-docker-dev-workflow-arango/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abdes%2Fsubmodule-docker-dev-workflow-arango/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32473804,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-30T13:12:12.517Z","status":"ssl_error","status_checked_at":"2026-04-30T13:12:06.837Z","response_time":57,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-29T15:45:14.744Z","updated_at":"2026-04-30T18:32:43.237Z","avatar_url":"https://github.com/abdes.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Database submodule for the example app using the git submodule and docker developer workflow\n\nsee the top-level project at [https://github.com/abdes/submodule-docker-dev-workflow](https://github.com/abdes/submodule-docker-dev-workflow)\n\n\n## Table of Content\n\u003c!-- TOC depthFrom:2 depthTo:6 withLinks:1 updateOnSave:1 orderedList:0 --\u003e\n\n- [Table of Content](#table-of-content)\n- [Dockerization considerations](#dockerization-considerations)\n- [Setting up the db and the Foxx apps](#setting-up-the-db-and-the-foxx-apps)\n- [Scripts and configuration data](#scripts-and-configuration-data)\n- [Command line tool: arango-tools](#command-line-tool-arango-tools)\n\n\u003c!-- /TOC --\u003e\n\n## Dockerization considerations\n\nThis contains the scripts snd toold used to populate snd manage the ArangoDB\ndatabase for testing. If the application also relies on microservices implemented\nusing Arango Foxx embedded engine, then such microservices implementation would\nbe located here.\n\nThe docker compose descriptor would mount volumes for the database from this\nsubmodule directory. In particular, for the development workflo to be efficient,\nthe foxx apps are directly mounted from the apps folder which has the same\nstructure than on the arangodb container.\n\n```\n├── apps\n│   └── _db\n│       ├── _system\n│       └── example\n│           └── hello\n│               └── APP\n│                   ├── index.js\n│                   └── manifest.json\n```\n\n## Setting up the db and the Foxx apps\n\n```shell\n$ npm install -g\n$ arango-tools init\n$ arango-tools dev hello\n```\n\nor\n\n```shell\n$ npm install\n$ npm run tools -- init\n$ npm run tools dev hello\n```\n\n## Scripts and configuration data\n\nTo automate and simplify the setup of the database and the foxx microservices\nrunning inside, the module offers a number of scripts and a command line tool\nthat can be used to execute the common operations during the development\nworkflow.\n\n```\n└── scripts\n    ├── dev                         # scripts and files for dev environment\n    │   ├── app-hello.js\n    │   ├── config.js               # config data for the scripts\n    │   ├── db-example.js\n    │   └── index.js\n    ├── prod                        # scripts and files for prod environment\n    └── tools\n        └── index.js                # helper command line tool\n```\n\n\u003e The scripts configuration data must be consistent with the environment\n\u003e described in the docker-compose file. In particular the `projectName`\n\u003e paramter must be the same than what is used in `docker-compose` command\n\u003e with `-p` option:\n\u003e e.g. `docker-compose -p example up`\n\n```js\n{\n  env: 'development',\n  docker: {\n    projectName: 'example',\n    arango: {\n      authentication: false,\n      logLevel: 'debug',\n      container: 'arangodb',\n      port: 8529\n    }\n  },\n  databases: [\n    {\n      name: 'example',\n      script: 'db-example.js'\n    }\n  ],\n  apps: [\n    {\n      name: 'hello',\n      database: 'example',\n      script: 'app-hello.js'\n    }\n  ]\n}\n```\n\n## Command line tool: arango-tools\n\nA command line has been built to encapsulate the common operations needed for\nthe development workflow. The tool is a node.js command line application.\n\n```\nUsage: arango-tools [options] [command]\n\n\nCommands:\n\n  init                    initialize arangodb with fresh database and apps\n  enable-dev|dev \u003capp\u003e    enable development mode for an app\n  enable-prod|prod \u003capp\u003e  enable production mode for an app\n\nOptions:\n\n  -h, --help              output usage information\n  -V, --version           output the version number\n  -e --environment \u003cenv\u003e  production | development\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fabdes%2Fsubmodule-docker-dev-workflow-arango","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fabdes%2Fsubmodule-docker-dev-workflow-arango","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fabdes%2Fsubmodule-docker-dev-workflow-arango/lists"}