曾为boston.gov提供代码。截至2019年11月,已移至Drupal 8。
Posted
tags:
中文标题:曾为boston.gov提供代码。截至2019年11月,已移至Drupal 8。 原文标题:Once housed code for boston.gov. Have moved to Drupal 8 as of November 2019. 项目评级:Star:289 Fork:63 下载地址:https://github.com/CityOfBoston/boston.gov-d7 详情介绍波士顿市官方网站Boston.gov的源代码。Boston.gov建立在Drupal上,是波士顿市的数字门户。
欢迎!我们已经在公共领域发布了Boston.gov的代码,以吸引像您这样的开发人员和设计师。我们欢迎您为改善城市的数字前门所做的贡献,并期待着与公众分享我们共同创造的东西
-市长Martin J.Walsh
有一个庞大的、有公民意识的软件开发生态系统,尤其是在Drupal社区,我们希望他们愿意伸出援手,帮助Boston.gov的发展,并促进多个组织之间的合作,以解决常见的技术障碍。
开发人员
开始阅读我们的开发人员指南。
每个出资人都应提供Boston.gov的主要回购。然后,所有开发人员都应该签出develop
分支的本地副本,开始工作。
对于任何工作,必须为单个任务创建拉取请求并提交审查。在提交拉取请求之前,请确保将本地分支与上游主分支同步。
拉取请求应从分叉回购提交到主回购的develop
分支。请确保给您的提取请求一个清晰的描述性标题,并使用下面的模板。
拉取请求模板
## Changes
This PR references #[GitHub issue number]
* [First change]
* [Second change]
* [Third change]
This PR references #[GitHub issue number]
Docker快速入门
观看此快速入门的YouTube视频。
Hub-我们的内部Drupal安装-可以在同一个容器中运行,并且
针对相同的MySQL服务器。要初始化它,请运行:
docker exec bostongov_drupal_1 scripts/init-docker-container.sh hub
可在http://127.0.0.1:8889/您可以使用admin/admin登录
http://127.0.0.1:8889/user?local
由于通过Docker卷装载拉取文件相对较慢,我们保持
容器中的vendored包,并且仅映射到我们的自定义目录中。
因此,在
容器:
docroot/profiles
docroot/sites/default
docroot/sites/hub
docroot/sites/all/modules/custom
docroot/sites/all/modules/features
docroot/sites/all/settings
docroot/sites/all/themes/custom
您可以通过编辑scripts/init-docker-container.sh
来修改此列表
运行drush
命令
要在正在运行的Drupal容器中获取shell,请运行docker exec -it bostongov_drupal_1 /bin/bash
从那里您可以运行drush
或task.sh
命令。
在Docker中运行测试
假设您已经完成了本地初始化,那么您可以运行:
docker exec bostongov_drupal_1 ./task.sh -Dbehat.run-server=true -Dproject.build_db_from=initialize tests:all
注:截至本文撰写之时,测试不适用于Hub环境(./hub-task.sh
)
使用Acquia云站点别名运行drush
命令
德鲁伊别名是远程Drupal站点的快捷方式。从本质上讲,这是一条可以发出德鲁伊命令的隧道。要使用Drush连接到Acquia Cloud站点别名,您必须:
按需测试实例
适用于城市团队成员
您可以将本地存储库推送到我们的临时集群上的测试实例
在AWS上。这将使您能够使用来自暂存的数据来展示功能
Boston.gov的快照。
先决条件
安装程序
要创建一个上传代码的位置,请按照
波士顿市/数字地形
回购,以进行Boston.gov分期部署的“变体”。
推送本地代码
要将本地存储库推送到集群,请运行:
$ ./doit stage <variant>
其中“<variant>
”是您在中创建的变体名称
CityOfBoston/digital-terraform
.
这将在本地构建一个容器映像,并将其上传到ECR。那就好了
更新您的临时ECS服务以使用新代码。
默认情况下,容器启动进程将初始化其MySQL数据库
带有来自Acquia的临时环境快照。
容器启动并正常运行后,将打印doit
脚本
有用的URL,然后退出。
在暂存上运行drush
ECS集群上通常不提供直接SSH访问。运行drush
命令,您可以访问webconsole.php
页面
领域这将给您一个shell提示,您可以在其中运行,例如drush uli
以获取登录链接。
webconsole.php
外壳在docroot
时启动。
与其他开发人员交谈以获取用户名和密码。
在推送之间保留数据库
默认情况下,每次将代码部署到测试实例时,它都以
Drupal数据库的新副本。
如果您想在测试运行之间保留状态,请登录 ode>和 运行: ( 这将获取数据库的快照,并将其上传到S3。下次 测试实例启动后,它将从该数据库开始同步 而不是阿奎亚的舞台表演。 清除隐藏,以便在下一个测试实例上重新启动数据库 按下,使用 公共领域 这个项目是世界范围内的公共领域。如许可证中所述: 本项目在美国境内为公共领域,通过CC0 1.0通用公共领域奉献,放弃了世界范围内作品的版权和相关权利。 对该项目的所有贡献将在CC0奉献下发布。通过提交撤回请求,即表示您同意遵守此放弃版权权益的规定。 保持组织有序 所有的项目,无论是否开源,都需要某种方式来保持组织。无论是报告错误(查看模板)、建议使用另一个模板的功能、提交拉取请求(yay,templates),甚至只是看看队列中的下一个是什么,我们都有一些方法可以让数字团队保持清楚: 为发展做出贡献 在我们的Git项目中查看我们当前的boston.gov优先级。 来自 Github 的枪支暴力数据源代码运行错误? (结束,输出错误) 上传到 App Store 的最低 Xcode 版本(截至 2016 年 2 月)webconsole.php
$ ../doit stash-db
..
是因为webconsole.php
开始于docroot
。)webconsole.php
运行:$ ../doit stash-db reset