Articles of 部署

组策略软件安装升级vsreplace

我selectgpo软件安装升级来升级现有的软件包。 我没有更换包装。 将旧软件包和升级软件包安装在join域的新计算机上吗?

我应该将部署设置保存在单独的存储库中吗?

我正在学习Salt Stack,将我的Python应用程序部署到AWS上的各个生产阶段。 现在我把所有的源代码和盐状态放在一个大的仓库中。 在使用我的源代码保留minion状态文件时是否有任何实际或安全考虑? 或者我应该把它们分开,为什么? 如果我将我的状态文件移动到一个单独的盐状态回购,我应该在哪里保留我的master和minionconfiguration文件,或者不属于版本控制?

从部署中排除文件夹并停止附加的文件删除

在Windows 2012服务器上使用Web部署,如果部署包含充满用户生成内容的文件夹,则将其从.pubxml文件中的发布中排除: <ExcludeFoldersFromDeployment>somefoldername</ExcludeFoldersFromDeployment> 如果您使用“ 删除目标位置上的其他文件”选项进行部署,则此文件夹中的文件仍会从实时服务器中删除。 <SkipExtraFilesOnServer>False</SkipExtraFilesOnServer> 有什么方法可以使部署过程(包括清理活动服务器)忽略指定的文件夹吗? 我想知道发布过程也会从服务器中删除已删除或已修改的文件,但是删除用户生成的数据的整个文件夹显然是一个问题!

你在PXE服务器上有什么?

基本上,每个人都已经加载了PXE服务器上准备使用的任何计算机上的酷工具吗? 我刚刚在家中设置了一个: Clonezilla的 的Memtest86 Ubuntu桌面和Ubuntu上网本混音9.10 的gparted 分开的魔术师 如果我在工作的时候这样做(我打算在某个时候),我可能会添加一些像Cobbler这样的集成部署解决scheme。 我只是好奇,看看别人在跑什么。

GPGvalidation部署脚本中的git标签

我们希望我们的部署过程直接从我们的git仓库中取出,但是只有在使用GPG签名签名(通过git tag -s )时才能激活新的更改。 我发现很less有使用git标签的GPGvalidation的工作stream的例子,所以我不确定是否有这样的“最佳做法”。 我们到目前为止看起来像这样: # discard erroneous local changes git reset –hard HEAD # get changes git fetch start=$(git rev-parse FETCH_HEAD) # get new tags git fetch –tags # find most recent release tag tag=$(git describe –abbrev=0 –match "release-*" $start) if git tag -v $tag; then git checkout $tag …do stuff… fi 这有道理吗? […]

用于多个显示器的命令行工具

我正在寻找一个命令行工具来设置多个监视器。 我正在使用WDS将许多机器部署到Windows Vista映像。 当syspreped时,双显示器设置从图像中被去除。 我已经在过去使用一个在安装结束时运行的vbscript来补偿这一点,这个vbscript会编辑registry项,以便像在基本映像上一样设置显示器。 我们最近购买了几台具有不同显卡和不同分辨率显示器的新机器(pipe理层坚持在某些机器上使用宽屏)。 我想保持部署完全自动化,不必search新的registry项,并为每个新的硬件设置开发一个新的脚本。 是否有任何命令行工具能够在每个屏幕上设置具有可能不同分辨率的多个监视器?

在.wim中捕获Windows更新,以便可以重新部署

我正在为我公司研究新的工作站部署策略。 就目前而言,我们正在手工build立每个工作站,这需要大量的时间。 绝对最长的步骤是Windows更新。 我目前已经安装了Windows部署服务器进行testing,我已经尝试了以下两种方法来尝试创build一个包含最新的Windows更新的.wim。 方法1: 我从零开始build立了一个工作站,并安装了所有必要的应用程序,并确保它完全是最新的。 然后,我使用Windows PE启动参考工作站,并使用wdscapture.exe工具捕获工作站的wdscapture.exe 。 然后我做了testing部署到目标工作站,并成功安装。 唯一的问题是,参考工作站的更新似乎没有任何结果。 当我检查目标工作站上的Windows更新时,说我有超过100个更新。 虽然我意识到这种方法不是硬件不可知的,但我可以pipe理属于我们公司的每个模型工作站的.wim文件。 这是不相关的,因为Windows更新似乎没有被捕获。 方法2: 我试图按照本指南直接在Windows 7 DVD上的通用install.wim中注入Windows Update软件包。 然后我将这个install.wim部署到我的目标工作站,但是当我检查Windows更新时,我仍然有大约60个更新。 但是wsusoffline工具下载的更新包包含在捕获中。 所以在我看来,wsusoffline工具不是下载所有可用的Windows更新。 问题: 我怎样才能部署/捕获包含最新Windows Update的.wim? 这甚至有可能吗?

有没有办法加快AWS CodeDeploy的速度?

我正在使用AWS CodeDeploy来部署我的网站,并且我注意到它的速度并不一致。 有时候速度非常快,但是其他时间每一步的部署都需要几分钟的时间。 当部署应该快速执行时,这是非常烦人的,以防出现错误或中断。 虽然CodeDeploy的速度我找不到任何文档,而且我也不能在速度慢或速度快的时候发现任何逻辑。 有什么办法可以加快速度,还有什么方法可以知道这么久吗?

部署工作站 – 最佳实践?

我一直在研究工作站的部署问题,并发现了大量的信息和几十种不同的方法和工具,但没有“最佳实践”的方法,至less没有缺乏我认为需要的一个function解决scheme是完美的。 我目前对windows工作站部署感兴趣,但是如果这些工具可以扩展到Linux,那么这是一个附加价值。 我希望我使用的部署工具能够执行以下操作: 独立于硬件 – 我希望我的映像或安装具有最小的硬件和驱动程序依赖性,以便我可以为所有工作站使用单个映像/软件包 轻松更新 – 我希望能够尽可能轻松地更新我的图像,而无需重新部署/重新构build/重新映像所有configuration PXE可启动部署 – 我希望工具可以从networking启动,这样我就不需要启动cd / DOK。 用于最小化人工input的脚本 – 理想情况下,该工具应在引导后自动运行,并执行“默认”部署(包括分区),除非另有提示。 即 – 拿一台电脑,挂上电源,开机,PXE启动,忘掉它,直到部署操作系统。 我没有发现任何单一的产品或环境。 最近我来到的是Windows部署服务/ WIM图像格式。 我还检查了很多映像和部署工具,包括clonezilla,ghost,g4u,wpkg等,但是其中大多数缺乏硬件独立性和可更新性。 我们目前有一个通过networking进行映像的Symantec Ghost服务器设置,但是我不满意它,因为它具有上面列出的所有缺点。 你有什么build议如何优化工作站部署的过程? 你如何在你的组织部署他们? 谢谢! 瓦迪姆。

如何自动化网站部署到生产包括缩小CSS / JS?

目前我正在使用以下手动过程将我的PHP网站从分段部署到生产: 使用在线YUI压缩工具来缩小CSS和JavaScript文件。 将原始的CSS和JavaScript文件移动到另一个目录(备份它们),然后用缩小的CSS和JavaScript CSS文件replace它们。 开始将所有文件从暂存服务器复制到我的Windows PC。 删除staging .htaccess和索引文件,以便它们不会被复制到生产服务器(这些文件具有特定的临时环境内容)。 打开WinSCP并转到生产服务器上的Web根目录,然后将主索引文件换成“更新正在进行”,这样如果有任何访问者来到网站,他们会收到一条消息说暂时closures。 然后使用WinSCP从我的电脑复制到生产Web服务器(这将覆盖服务器上的所有现有文件),大约需要4分钟才能看到有很多文件。 使用SSHlogin到生产服务器,并运行大约5条命令,为各种可写目录设置适当的权限,并确保所有内容仍位于www-root组下。 我认为使用SSH的上传过程会改变所有现有的权限。 将“正在更新”索引文件切换回正常索引。 所有这些过程都是非常复杂的,大概需要5-10分钟,每当我对网站进行更改时,我都必须这样做,所以这已经变得很麻烦。 现在有什么办法使用一些脚本工具来自动化这个过程吗? 还是有一个很好的部署工具,人们使用,可以做到这一切? 我的舞台和生产机器是基于Ubuntu 12.04服务器,所以我可以使用bash脚本来完成一些工作。 我能看到的一些改进可以做到如此: 将一些代码添加到我的网站,以便检测它是否处于暂存或生产状态,然后根据环境使用原始或缩小的CSS / JavaScript文件。 这将节省我手动交换文件。 使用命令行YUI压缩器,并在需要时从脚本文件运行。 使用像rsync这样的东西,所以它只是从我的登台服务器复制文件到生产服务器不覆盖每个文件 我所从事的一家公司使用Fabric命令行工具来自动化部署并做这种事情。 然而,这是一个很好的select,还是有更好的工具吗?