{"id":13781654,"url":"https://github.com/mburns/application_nodejs","last_synced_at":"2025-05-11T15:31:57.741Z","repository":{"id":6474179,"uuid":"7714192","full_name":"mburns/application_nodejs","owner":"mburns","description":"Chef cookbook for deploying and configuring Node.js applications","archived":true,"fork":false,"pushed_at":"2017-03-25T11:28:38.000Z","size":50,"stargazers_count":10,"open_issues_count":4,"forks_count":35,"subscribers_count":4,"default_branch":"master","last_synced_at":"2024-11-17T16:43:12.057Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mburns.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}},"created_at":"2013-01-20T08:19:32.000Z","updated_at":"2023-01-28T15:59:08.000Z","dependencies_parsed_at":"2022-08-29T16:21:08.914Z","dependency_job_id":null,"html_url":"https://github.com/mburns/application_nodejs","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mburns%2Fapplication_nodejs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mburns%2Fapplication_nodejs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mburns%2Fapplication_nodejs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mburns%2Fapplication_nodejs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mburns","download_url":"https://codeload.github.com/mburns/application_nodejs/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253588582,"owners_count":21932281,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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-08-03T18:01:27.986Z","updated_at":"2025-05-11T15:31:57.422Z","avatar_url":"https://github.com/mburns.png","language":"Ruby","funding_links":[],"categories":["Resources"],"sub_categories":["Deployment"],"readme":"[![Build Status](https://travis-ci.org/mburns/application_nodejs.svg?branch=master)](https://travis-ci.org/mburns/application_nodejs)\n[![Chef cookbook](https://img.shields.io/cookbook/v/application_nodejs.svg)](https://supermarket.chef.io/cookbooks/application_nodejs)\n\n## Description\n\nThis cookbook is designed to be able to describe and deploy Node.js web applications using Upstart.\n\nNote that this cookbook provides the Node-specific bindings for the `application` cookbook; you will find general documentation in that cookbook.\n\n## Requirements\n\nChef 0.12.0 or higher required (for Chef environment use).\n\nUpstart 1.4 or higher for the use of `setuid` in the default Upstart configuration template.\nThis requirement can be worked around by specifying a custom template.\n\nThe following Opscode cookbooks are dependencies:\n\n* [application](https://github.com/opscode-cookbooks/application)\n* [nodejs](https://github.com/redguide/nodejs)\n* [nginx](https://github.com/miketheman/nginx)\n\n## Resources/Providers\n\nThe `nodejs` sub-resource LWRP deals with deploying Node.js applications using Upstart. It is not meant to be used by itself; make sure you are familiar with the `application` cookbook before proceeding.\n\nThe `passenger_nginx` sub-resource LWRP deploys nginx with passenger (for all you websocket users).\nThe `passenger_apache2` sub-resource LWRP deploys apache2 with passenger.\n\n### Attribute Parameters\n\n- **npm**: If `true`, `npm` will be used to install the dependencies specified in `packages.json`. Defaults to `true`.\n- **template**: The name of the template that will be used to create the Upstart configuration file. If specified, it will be looked up in the application cookbook. Defaults to `nodejs.upstart.conf.erb` from this cookbook.\n- **entry_point**: The argument to pass to node. Defaults to `app.js`.\n- **params**: Hash of ENV Variables to be rendered as `passenger_set_cgi_param KEY VALUE`\n\n## Usage\n\nHere is an example hello world application using [Express](http://expressjs.com):\n\n```\napplication \"hello-world\" do\n  path \"/srv/node-hello-world\"\n  owner \"www-data\"\n  group \"www-data\"\n  packages [\"git\"]\n\n  repository \"git://github.com/visionmedia/express.git\"\n\n  nodejs do\n    entry_point \"examples/hello-world\"\n  end\n\n  passenger_nginx do\n    npm true\n    entry_point 'cluster.js'\n    server_name \"cluster-#{node.chef_environment}\"\n    params :config =\u003e config\n  end\n\n  passenger_apache2 do\n    npm true\n    entry_point 'cluster.js'\n    server_name \"cluster-#{node.chef_environment}\"\n    params :config =\u003e config\n  end\nend\n```\n\n## License and Author\n\nAuthor:: Michael Burns (\u003cmichael@mirwin.net\u003e)\n\nAuthor:: Conrad Kramer (\u003cconrad@kramerapps.com\u003e)\n\nAuthor:: Jake Plimack (\u003cjake.plimack@gmail.com\u003e)\n\n\nCopyright 2013, Kramer Software Productions, LLC.\n\nCopyright 2014, Jake Plimack Photography, LLC.\n\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n    http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmburns%2Fapplication_nodejs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmburns%2Fapplication_nodejs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmburns%2Fapplication_nodejs/lists"}