{"id":13618382,"url":"https://github.com/mixmaxhq/eb-fix-npm","last_synced_at":"2025-04-14T10:31:52.412Z","repository":{"id":49156345,"uuid":"73530466","full_name":"mixmaxhq/eb-fix-npm","owner":"mixmaxhq","description":"[unsupported] Fixes npm in Elastic Beanstalk environments.","archived":true,"fork":false,"pushed_at":"2021-06-25T18:36:35.000Z","size":33,"stargazers_count":50,"open_issues_count":3,"forks_count":11,"subscribers_count":23,"default_branch":"master","last_synced_at":"2024-10-15T17:40:44.242Z","etag":null,"topics":["eb-script","ebextensions","elasticbeanstalk","hooks","npm","unsupported"],"latest_commit_sha":null,"homepage":"https://www.mixmax.com/careers","language":null,"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/mixmaxhq.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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":"2016-11-12T04:01:49.000Z","updated_at":"2023-10-17T09:02:59.000Z","dependencies_parsed_at":"2022-08-25T20:20:20.381Z","dependency_job_id":null,"html_url":"https://github.com/mixmaxhq/eb-fix-npm","commit_stats":null,"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mixmaxhq%2Feb-fix-npm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mixmaxhq%2Feb-fix-npm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mixmaxhq%2Feb-fix-npm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mixmaxhq%2Feb-fix-npm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mixmaxhq","download_url":"https://codeload.github.com/mixmaxhq/eb-fix-npm/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223627508,"owners_count":17175721,"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":["eb-script","ebextensions","elasticbeanstalk","hooks","npm","unsupported"],"created_at":"2024-08-01T20:01:59.982Z","updated_at":"2024-11-08T03:31:10.393Z","avatar_url":"https://github.com/mixmaxhq.png","language":null,"funding_links":[],"categories":["HarmonyOS"],"sub_categories":["Windows Manager"],"readme":"# eb-fix-npm\n\nThis module installs an `.ebextensions` config file that will fix npm in various\nways in AWS Elastic Beanstalk to make your deploys faster and more reliable.\n\n**TL;DR** This module makes it possible to upgrade from Node 4 to Node 6 on Elastic\nBeanstalk and speeds up npm install by 95%.\n\n\u003e Looking for even bigger savings? You might consider [disabling npm altogether](https://github.com/mixmaxhq/eb-disable-npm). **Mixmax no longer uses this module, though we will answer support questions to the best of our ability as well as accept others' PRs.**\n\nThis module works by installing deployment hooks that perform setup and cleanup\nrelated to Elastic Beanstalk's use of npm:\n\n* Downgrade npm to npm 2 because npm 3 is too slow to install packages for EB (deploys will time out)\n* Cache Node modules between deploys\n* Only install (don't rebuild) Node modules on application deploy\n* Only rebuild (don't install) Node modules on configuration deploy (EB's script\ntries to both install and rebuild)\n* Actually rebuild Node modules on configuration deploy (EB's script uses the\nthe wrong directory and so just aborts)\n* Remove npm temp files [leftover](https://github.com/npm/npm/issues/6855) by installing from shrinkwrap\n\nThe hooks expect that your Elastic Beanstalk application is using either platform\nversion [3.1.0](http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/concepts.platforms.html#concepts.platforms.nodejs) or the previous version, version [2.1.3](http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/platform-history-nodejs.html). It may work with newer versions\u0026mdash;if it does not, PRs are welcome!\n\n## Installation\n\n1. `npm install eb-fix-npm --save-dev` (see [here](https://github.com/mixmaxhq/install-files/blob/master/README.md#installation) for why `--save-dev`)\n2. Commit the `.ebextensions` file it creates.\n3. Deploy.\n\n## Modifying the `.ebextensions` file\n\nThis module will overwrite the file if/when it is updated.\n\nPull requests are welcome if you have some generally-useful modifications to\nsuggest.\n\nIf you'd like to make modifications specific to your use case, you should uninstall\nthis module after installing the `.ebextensions` file. Uninstallation won't take\nthe file with it.\n\n## Acknowledgements\n\nSome of the hooks are based on logic from https://github.com/kopurando/better-faster-elastic-beanstalk.\n\n## Release History\n\n* 1.2.5 Use the runtime Node version\n* 1.2.4 Set proper home directory\n* 1.2.3 Fix rebuild directory\n* 1.2.2 Misc fixes\n* 1.2.1 Use user's environment variables with npm\n* 1.2.0 Avoid unnecessarily installing/rebuilding Node modules\n* 1.1.0 Cache Node modules between deploys\n* 1.0.0 Initial commit\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmixmaxhq%2Feb-fix-npm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmixmaxhq%2Feb-fix-npm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmixmaxhq%2Feb-fix-npm/lists"}