使用带有triggerio的自耕农

时间:2013-01-31 13:52:27

标签: trigger.io yeoman

我正在尝试将trigger.io与yeoman一起使用。 我在整个构建周期中使用yeoman(scaffolding angularjs application / testing / ..) 和trigger.io进行部署。
Trigger.io在'app'目录中生成'src'和yeoman中的所有内容。

有没有让Trigger.io写入'app'而不是'src'目录?

编辑这似乎有效但不太可行,因为它需要跟踪自己生成的新目录/文件:

  • ln -s app / index.html index.html
  • ln -s app / styles styles
  • ln -s app / scripts scripts
  • :继续任何相关的事情

1 个答案:

答案 0 :(得分:2)

我最终将dist符号链接到src因为我们需要Yeoman来编译SCSS和CoffeScript文件。当您yeoman server创建yeoman build目录时,无法运行dist。另外 bummerish 就是当你再次yeoman server时,它会清理dist目录。

我计划为Trigger创建生成器的yeoman生成器,并添加一些模仿我在使用Sinatra进行测试和开发时创建的Rakefile任务的grunt任务(例如yeoman simulator,{ {1}},yeoman device)。

修改:我现在直接向我的yeoman testflight添加了一些任务。我添加了gruntfile.js并添加了以下子任务。

grunt-contrib-copy

我将这些任务添加到相应的观察命令中,并添加了一块新手表来观看copy: { app: { files: { "src/": "app/**", // core app files }, }, compass: { files: { "src/styles/": "temp/styles/**", // drop in the compiled coffeescript } }, coffee: { files: { "src/scripts/": "temp/scripts/**" // drop in the compiled scss } } }, 目录。

app

现在调用watch: { coffee: { files: 'app/scripts/**/*.coffee', tasks: 'coffee copy:coffee reload' }, compass: { files: [ 'app/styles/**/*.{scss,sass}' ], tasks: 'compass copy:compass reload' }, app: { files: [ 'app/**/*.{html,png,json,css,js}' ], tasks: 'copy:app' }, } 的{​​{1}}会使yeoman server保持最新状态。

我还带来了yeoman watch以执行以下操作。

src

创建一些任务,如:

grunt-shell

我对它并不完全满意,但它让我继续运行shell: { forge_build: { command: 'forge build ios 2>&1 | tee output', stdout: true }, forge_run_device: { command: 'forge run ios --ios.device device', stdout: true }, forge_run: { command: 'forge run ios', stdout: true } } 并转到其他地方的控制台并运行grunt.registerTask("sim", 'copy shell:forge_build shell:forge_run'); grunt.registerTask("device", 'copy shell:forge_build shell:forge_run_device'); 将其提升到设备中。它还将yeoman server目录保存在可以检入的位置。

最终我将把它移到yeoman插件中并添加一些更具体的构建任务来清理适当目标(例如iOS,Android)的src目录以保持dir大小。

编辑:我已创建yeoman device以帮助从Yeoman内部运行src。我还在博客上写了一些关于创建a more terse output for `forge的内容。