在将测试链接定向到staging
环境VS到production
环境时,我遇到了问题。
当前行为:当我尝试在终端ember deploy staging
上运行此命令时,它成功创建了一个测试链接。但是,我的组件有一行代码可以检查应用程序当前指向的环境。不幸的是,它指向production
环境
预期的行为:我试图实现的是当我运行命令ember deploy staging
时,它应该指向staging
环境而不是production
环境
问题:如何告诉ember为登台环境创建测试链接?
请在下面查看我的../config/deploy.js
代码
/* jshint node: true */
module.exports = function(deployTarget) {
var ENV = {
build: {
environment: 'production'
},
};
ENV['revision-data'] = {
type: 'git-commit'
};
ENV['s3'] = {
accessKeyId: process.env.S3_ACCESS_KEY_ID,
secretAccessKey: process.env.S3_ACCESS_KEY_SECRET,
bucket: 'sample',
prefix: deployTarget + '/dist/www',
region: 'us-east-1',
filePattern: '**/*.{js,css,png,gif,ico,jpg,xml,txt,svg,swf,eot,ttf,woff,woff2}'
};
ENV['redis'] = {
host: process.env.REDIS_HOST,
port: process.env.REDIS_PORT,
password: process.env.REDIS_PASSWORD,
maxRecentUploads: 30
};
ENV['gzip'] = {
'filePattern': '**/*.{js,css,json,ico,xml,txt,svg,eot,ttf,woff,woff2}'
};
ENV['rollbar'] = {
accessToken: process.env.ROLLBAR_ACCESS_TOKEN,
accessServerToken: process.env.ROLLBAR_SERVER_ACCESS_TOKEN,
minifiedPrependUrl: 'https://cdn1-' + deployTarget + '.sample.com/dist/www/',
rollbarConfig: {
enabled: true,
environment: deployTarget,
captureUncaught: true
}
};
if (deployTarget === 'production') {
ENV.rollbar.minifiedPrependUrl = 'https://cdn1.sample.com/dist/www/';
}
return ENV;
};
这是我的组件的代码,用于在创建测试链接/components/my-component/component.js
import Ember from 'ember';
import config from '../../../config/environment';
export default Ember.Component.extend({
isProduction: config.environment === 'production',
myEnvironment: config.environment;
});
在我的myEnvironment
上登录production
时,{{log myEnvironment}}
返回/component/my-component/template.hbs
环境
这是我的.env.deploy.staging
CLIENT_HOST=https://staging.sample.com
ASSETS_PREFIX=https://cdn1-staging.sample.com/dist/www/
S3_ACCESS_KEY_ID=ABCDEF123456
S3_ACCESS_KEY_SECRET=ABCDEF123456
ROLLBAR_ACCESS_TOKEN=ABCDEF123456
ROLLBAR_SERVER_ACCESS_TOKEN=ABCDEF123456
任何回应都值得赞赏。希望有人能帮助我,谢谢!