在SEO方面......
是否最好将该方案放在包含所有链接的父级上?
<nav itemscope="itemscope" itemtype="http://www.schema.org/SiteNavigationElement">
<a href="#">Link 1</a>
<a href="#">Link 2</a>
<a href="#">Link 3</a>
</nav>
Run Code Online (Sandbox Code Playgroud)
......或者每个链接应该被视为它自己的元素吗?
<nav>
<span itemscope="itemscope" itemtype="http://www.schema.org/SiteNavigationElement">
<a itemprop="url" href="#">
<span itemprop="name">Link 1</span>
</a>
</span>
<span itemscope="itemscope" itemtype="http://www.schema.org/SiteNavigationElement">
<a itemprop="url" href="#">
<span itemprop="name">Link 2</span>
</a>
</span>
<span itemscope="itemscope" itemtype="http://www.schema.org/SiteNavigationElement">
<a itemprop="url" href="#">
<span itemprop="name">Link 3</span>
</a>
</span>
</nav>
Run Code Online (Sandbox Code Playgroud) 我目前正在我们的办公室设置一个构建服务器,我想知道这是什么最好的做法.我知道每种情况都要求采用不同的方法,并且有一百万种方法可以实现相同的目标,但由于我是Jenkins的新手和一般的构建服务器的概念,我想知道我是否这样做'对了".
我们公司专注于为各种客户构建网站,如WordPress或Magento等各种平台.我现在有以下设置:
我们将更改推送到Git中的master或staging-branch.Jenkins轮询这些分支,并在检测到更改时执行以下操作:
master在此示例中)build-masterorigin/masternpm installa package.json.grunt builda Gruntfile.js.origin/build-master.cap build-master deploy让Capistrano处理远程服务器上的部署.现在我想知道这是否是使用构建服务器的"正确"方式.我遇到了一些逻辑问题.喜欢:
例如供应商软件.当我有各种带有Bower的JS库(它们位于git-ignored js/vendor-folder中)时,我可以将它们连接起来并将其uglify为一个缩小的JS文件,这样它们就可以将它们提交到build-master-repository(对于Capistrano).但是当我有PHP库(例如使用Composer)时,我不知道如何处理这个问题.它们位于git-ignored php/vendor-folder中,但它们需要包含在-branch中,build-master以便在实时服务器上部署get.目前我这样做是通过向.gitignore.build我的存储库添加一个包含php/vendor-folder的存储库,并.gitignore在提交和推送之前用这一个覆盖现有的存储库origin/build-master.
和/或:
编译文件.当我不想包含一些文件(比如从SASS生成的CSS文件)时,我把它们放在了.gitignore.但同样,当Capistrano要部署它时,我希望编译的,连接的和缩小的CSS文件在我的存储库中,否则它不会放在我的生产服务器上.
任何人都可以告诉我,我是否应该以它应该的方式构建和部署?或者我在这里完全过于复杂了?我真的很感兴趣那些有更多经验的人在他们的构建过程中如何利用Jenkins,Grunt,Bower,Composer,Capistrano等.
所以我在考虑这种设置,但我什至不确定是否可行。我在一个较大的组织中工作,我们希望对各种项目执行静态代码分析和单元测试。这些项目都是遵循相同模式的模块,因此,为了简单起见,我有30个项目都可以用相同的方式构建Jenkinsfile。唯一的区别Jenkinsfile是结帐阶段的存储库。
现在,我正在考虑是否有可能包含1个存储库Jenkinsfile,并让其他30个存储库使用该存储库(使用“来自SCM的管道脚本”)来获取Jenkinsfile。然后,我将在url-step的git命令中Checkout使用参数(或某些参数)设置-attribute 。
现在我的问题是:
Jenkinsfile要构建的存储库不同的存储库)。Jenkinsfile(这显然不是我想要的)。任何答案,想法或建议将不胜感激。
git continuous-integration multiple-repositories jenkins jenkins-pipeline
我知道在 SO 上已经有很多关于这个主题的问题,我尝试了他们提出的几乎所有解决方案,但我目前无法让它工作(我想要的方式)是)。
我有一个在 Jenkins 中启动的 docker 容器,在这个 docker 容器中,我尝试克隆一个私有存储库。为此,我需要将我的公共 Jenkins 密钥添加到我的 Git 存储库中,并且我的 docker 容器需要知道这个 SSH 密钥。
我已经能够通过在 my 中执行以下操作来做到这一点Jenkinsfile:
docker.image('php_jenkins_test').inside('--env COMPOSER_HOME=$WORKSPACE/.composer -v /etc/passwd:/etc/passwd:ro -v /home/jenkins/.ssh:/home/jenkins/.ssh:ro') {
sshagent(['jenkins-ssh-publickey']) {
sh "./test/run-tests.sh"
}
}
Run Code Online (Sandbox Code Playgroud)
由于以下原因,我将我的etc/passwd和/home/jenkins/.ssh作为只读卷挂载:
/etc/passwd.known_hosts(和我的密钥?)需要在我的 docker 容器中知道。由于/etc/passwd将 jenkins 用户映射到/home/jenkins,我还必须在我的来宾计算机上安装 Jenkins 的 SSH 目录。sshagent-command树立SSH插座等等,我的钥匙是我的容器内访问(纠正我,如果我错了,我是相当新的詹金斯和码头工人)。就像我说的:这已经有效了。通过此设置,我可以在 Jenkins 的 docker …
我有一个具有多个阶段的Jenkins管道,它们都需要相同的环境变量,我这样运行:
script {
withCredentials([usernamePassword(credentialsId: 'COMPOSER_REPO_MAGENTO', passwordVariable: 'MAGE_REPO_PASS', usernameVariable: 'MAGE_REPO_USER')]) {
def composerAuth = """{
"http-basic": {
"repo.magento.com": {
"username": "${MAGE_REPO_USER}",
"password": "${MAGE_REPO_PASS}"
}
}
}""";
// do some stuff here that uses composerAuth
}
}
Run Code Online (Sandbox Code Playgroud)
我不想composerAuth每次都重新声明,所以我想将凭证存储在全局变量中,所以我可以这样做:
script {
// do some stuff here that uses global set composerAuth
}
Run Code Online (Sandbox Code Playgroud)
我已经尝试将它放在环境部分:
environment {
DOCKER_IMAGE_NAME = "magento2_website_sibo"
withCredentials([usernamePassword(credentialsId: 'COMPOSER_REPO_MAGENTO', passwordVariable: 'MAGE_REPO_PASS', usernameVariable: 'MAGE_REPO_USER')]) {
COMPOSER_AUTH = """{
"http-basic": {
"repo.magento.com": {
"username": "${MAGE_REPO_USER}",
"password": "${MAGE_REPO_PASS}"
}
}
}""";
}
} …Run Code Online (Sandbox Code Playgroud) 通常,当我使用 Gulp 时,我会从以下内容开始:
gulp.src('some/file.txt).pipe( ... ) // etc
Run Code Online (Sandbox Code Playgroud)
我也可以使用字符串而不是文件吗?例如:
gulp.str('some text').pipe( .... ) // etc
Run Code Online (Sandbox Code Playgroud)
我正在处理的用例是我正在创建一个 SCSS 字符串临时并希望将其通过管道传输到 libsass。但我不想创建一个临时文件,而是使用原始字符串。例子:
var myString = 'html { color: red; }';
gulp.str(myString).pipe(sass()) // etc
Run Code Online (Sandbox Code Playgroud)
这可能吗?
我在我的场景中添加了一个定向光,但它没有显示所有的阴影。阴影被切断,就像聚光灯的 FOV 太小一样。
当我启用 shadowCameraVisible 时,我看到我的灯就像一个显示阴影的大盒子(这是有道理的)。问题是:我怎样才能使这个“盒子”更大?
jenkins ×4
git ×3
build-server ×1
capistrano ×1
credentials ×1
docker ×1
git-clone ×1
groovy ×1
gulp ×1
html5 ×1
light ×1
sass ×1
schema.org ×1
seo ×1
shadow ×1
ssh ×1
string ×1
three.js ×1