This plugin for Ember CLI Deploy specializes in uploading the `index.html` (bootstrap) file of an Ember application to an Amazon S3 bucket. It is commonly used as part of the 'lightning method' of deployment, where both application assets and the index file are served from S3. The current stable version is 4.0.3, with recent bug fixes focusing on robust S3 response handling, including 'NotFound' and empty responses. It integrates into the `ember-cli-deploy` pipeline, implementing `configure`, `upload`, `activate`, and `fetchRevisions` hooks. It's actively maintained with a moderate release cadence addressing bug fixes and minor enhancements, distinguishing itself by managing *only* the index file, often alongside `ember-cli-deploy-s3` which handles other application assets.
npm install ember-cli-deploy-s3-indexVerified import paths — ran on the pinned version, not inferred.
Demonstrates how to install the plugin and configure it in `config/deploy.js` for an Ember CLI project, preparing for index file deployment to AWS S3.
Always define separate and distinct configuration objects for `ENV.s3` and `ENV['s3-index']` in your `config/deploy.js`, even if properties like `bucket` or `region` are identical.
Upgrade your Node.js environment to `14.* || 16.* || 18.* || >= 20`. Review and update your project's `package.json` dependencies to ensure compatibility with `ember-cli-deploy` and its ecosystem plugins.
For production and secure deployments, prioritize using IAM roles for EC2 instances/CI environments or setting AWS credentials as environment variables over hardcoding them in configuration files.
In your `config/deploy.js`, explicitly set `ENV['s3-index'].acl = false;` to prevent the plugin from applying any ACLs during upload. Ensure your bucket policy grants appropriate public access if needed.
Verify that your AWS credentials are correct and that the associated IAM user or role has the required S3 permissions configured for the specified bucket and prefix in your AWS IAM console.
Double-check the `filePattern` and `prefix` settings in `config/deploy.js`. Use the AWS S3 console or CLI to inspect your bucket contents and confirm the path and existence of expected index files and revision history.
Ensure your S3 bucket configuration is valid and accessible. Check the AWS Service Health Dashboard for S3 issues. This specific bug was addressed and resolved in plugin versions 4.0.2 and 4.0.3; upgrading the plugin might be necessary.