优化R包开发:在***上预装开发软件包
需积分: 9 72 浏览量
更新于2024-10-24
收藏 6KB ZIP 举报
资源摘要信息:"r-shippable:在 *** 上为我的 R 包 CI+CD 预安装一些包"
在本教程中,我们将探索如何在Shippable平台上为R包的持续集成(CI)和持续部署(CD)预安装一些必要的软件包。Shippable是一个云服务,可以快速构建、测试、部署任何代码。其工作原理是通过为用户提供虚拟机(Minion)的配置和管理功能,让开发者能够专注于代码的构建和测试。
首先,Shippable会维护其Minion的安装状态,这意味着一旦某个软件包被安装,它将在后续的构建中保持可用,而无需重复安装。这大幅提升了构建效率,因为它节省了宝贵的资源和时间,避免了每次构建时都重新安装所有依赖。
在Shippable的配置中,我们首先预安装了r-base-dev包。这个软件包是R开发的基础包,它包含创建R包所需的一切。它使得开发者可以执行如R CMD build和R CMD check等命令,这些命令用于打包和检查R包的功能正确性。
接下来,我们安装了r-cran-devtools包。这个包提供了与GitHub等代码托管平台交互的功能,允许开发者从这些平台直接安装开发中的包。这对于协作开发或是利用开源社区资源至关重要。
由于R包的安装有时会比较耗时,特别是当需要从源代码编译安装时,因此我们选择通过预安装额外的R包(如r-cran-*),来加速构建过程。这些包作为Debian软件包进行安装,相较于作为R包编译安装,通常会更加迅速。这一步骤对于优化CI流程中的构建时间至关重要。
此外,Pandoc及其附加模块pandoc-citeproc也被预装。Pandoc是一个文档转换工具,广泛用于将一种标记语言转换成另一种。在R包开发中,Pandoc可以用于生成文档,特别是对于R Markdown(v2)的支持。R Markdown是R的一个强大工具,可以用来创建动态文档、报告、甚至交互式应用,这对于R包的文档化尤其重要。
为了从SVN版本控制系统中检出和更新R源代码,subversion包也被预装。这对于需要从SVN仓库中获取源代码进行开发的R包开发者来说,是一个不可或缺的工具。
最后,R的开发版本被构建在目录../r-source中,并安装到了~/r-devel。Shippable通过创建符号链接/usr/bin/Rd,确保了系统可以找到并使用这个新安装的开发版本。
这一系列的预装步骤,对于确保Shippable环境能够有效地支持R包的CI和CD流程至关重要。通过这些优化,开发者可以在Shippable平台上享受一个快速、可靠的构建和测试环境,从而提高开发效率并加快产品上市时间。
【标签】:"Shell"的提及表明,这个配置过程很可能涉及到了Shell脚本的编写,以便自动化地执行上述的软件包安装和环境配置任务。Shell脚本是执行此类任务的常用工具,它能够通过一系列命令自动化地完成复杂的环境配置。
2019-09-04 上传
2021-07-06 上传
2021-05-25 上传
2021-05-31 上传
2021-06-25 上传
2021-07-09 上传
2021-05-20 上传
2021-04-28 上传
2021-05-07 上传
yoreua
- 粉丝: 28
- 资源: 4691
最新资源
- 高清艺术文字图标资源,PNG和ICO格式免费下载
- mui框架HTML5应用界面组件使用示例教程
- Vue.js开发利器:chrome-vue-devtools插件解析
- 掌握ElectronBrowserJS:打造跨平台电子应用
- 前端导师教程:构建与部署社交证明页面
- Java多线程与线程安全在断点续传中的实现
- 免Root一键卸载安卓预装应用教程
- 易语言实现高级表格滚动条完美控制技巧
- 超声波测距尺的源码实现
- 数据可视化与交互:构建易用的数据界面
- 实现Discourse外聘回复自动标记的简易插件
- 链表的头插法与尾插法实现及长度计算
- Playwright与Typescript及Mocha集成:自动化UI测试实践指南
- 128x128像素线性工具图标下载集合
- 易语言安装包程序增强版:智能导入与重复库过滤
- 利用AJAX与Spotify API在Google地图中探索世界音乐排行榜