Re: Build queue hangs after timer task error on Jenkins

2018-08-09 Thread pbasanta2002
Here is the scenario: 
Basically My Jenkin master is configured with K8S dynmic plugin and Mesos 
dynamic plugin .
While running one of the mesos job .. job hanging because the pod creation 
is failing on mesos .. and on jenkins log I can see this error ..

Aug 07, 2018 11:37:51 PM SEVERE hudson.triggers.SafeTimerTask run
Timer task hudson.slaves.NodeProvisioner$NodeProvisionerInvoker@7dffefc4 
failed
 Now triggered few of the jobs to be executed on K8S Cluster  and all the 
jobs are hanging / waiting .. 
Killed mesos job  then K8S jobs started executing ..
So is there any dependency with jenkins with the error pointed above..

On Thursday, August 9, 2018 at 11:33:25 AM UTC+5:30, Jan Monterrubio wrote:
>
>
> Do you have an abort if build is stuck configured. Or a timeout strategy 
> in your config xml?
>
> On Wed, Aug 8, 2018 at 2:04 AM > wrote:
>
>> Build queue hangs after timer task error on Jenkins.. is there any 
>> solution for this ..
>>
>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "Jenkins Users" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to jenkinsci-use...@googlegroups.com .
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/jenkinsci-users/8e35f45a-66e3-46f5-8f7f-5d93da458477%40googlegroups.com
>>  
>> 
>> .
>> For more options, visit https://groups.google.com/d/optout.
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/5cff9caa-ef17-4cf8-8627-899798343c1a%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: Specifing git branch via a parameter

2018-08-09 Thread Mark Waite


On Thursday, August 9, 2018 at 4:45:07 PM UTC-6, MDKF wrote:
>
> Hi All,
>  I have a pipeline that starts out like this:
>
> pipeline {
>>
>>  agent any
>>
>>  parameters {
>>
>> string(defaultValue: 'develop', description: 'branch', name: 
>>> 'Branch')
>>
>> }
>>
>>  stages {
>>
>>   stage('Checkout') {
>>
>>steps {
>>
>> checkout([$class: 'GitSCM', branches: [
>>
>>  [name: 'refs/remotes/origin/${params.Branch}']
>>
>>
String expansion in groovy happens inside a double-quoted string and does 
not happen inside a single-quoted string.  Change to a 
double-quoted string.  You may also prefer the simpler form of: 

[name: params.Branch]

Mark Waite

When the project it runs because the parameter isn't being inserted.:
>
>> > C:\Program Files (x86)\Git\cmd\git.exe rev-parse 
>> "refs/remotes/origin/${params.Branch}^{commit}" # timeout=10
>> > C:\Program Files (x86)\Git\cmd\git.exe rev-parse 
>> "refs/remotes/origin/refs/remotes/origin/${params.Branch}^{commit}" # 
>> timeout=10 
>
> > C:\Program Files (x86)\Git\cmd\git.exe rev-parse 
>> "refs/remotes/origin/${params.Branch}^{commit}" # timeout=10 
>
>
> What am I doing wrong? Thanks,
> -Michael
>

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/21abbc0e-dfe8-47e0-9fa5-05fab1d8f0fd%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: pipeline script and git parameter plugin

2018-08-09 Thread Mark Waite


On Thursday, August 9, 2018 at 9:55:55 AM UTC-6, suoyua...@shopee.com wrote:
>
> Hi, I am running jenkins2 and pipeline for my job
>
> My pipeline definition is pipeline script(not pipeline script from SCM) 
> and I am using git as my scm system.
>
> I want to specify a git branch before a build starts. How can I do this?
>

If you know the list of branch names that you want to present in the list, 
you can use the Jenkins Minute 
video https://www.youtube.com/watch?v=5_tvlaIeQUQ as an example to 
parameterize the PIpeline job.

If you want the list of branches to be generated dynamically based on the 
contents of the repository, investigate the git parameter plugin 
at https://plugins.jenkins.io/git-parameter

Mark Waite

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/1b4ea70c-58e0-4364-807f-6a27fa1e2f73%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Specifing git branch via a parameter

2018-08-09 Thread MDKF
Hi All,
 I have a pipeline that starts out like this:

pipeline {
>
>  agent any
>
>  parameters {
>
> string(defaultValue: 'develop', description: 'branch', name: 
>> 'Branch')
>
> }
>
>  stages {
>
>   stage('Checkout') {
>
>steps {
>
> checkout([$class: 'GitSCM', branches: [
>
>  [name: 'refs/remotes/origin/${params.Branch}']
>
>
> When the project it runs because the parameter isn't being inserted.:

> > C:\Program Files (x86)\Git\cmd\git.exe rev-parse 
> "refs/remotes/origin/${params.Branch}^{commit}" # timeout=10
> > C:\Program Files (x86)\Git\cmd\git.exe rev-parse 
> "refs/remotes/origin/refs/remotes/origin/${params.Branch}^{commit}" # 
> timeout=10 

> C:\Program Files (x86)\Git\cmd\git.exe rev-parse 
> "refs/remotes/origin/${params.Branch}^{commit}" # timeout=10 


What am I doing wrong? Thanks,
-Michael

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/10da89a4-c57b-404c-acc9-cbf57b6808d2%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


How to restrict Jenkins to use specific mirror server

2018-08-09 Thread Rahul Sahotay
Hello There:

Is there a way to restrict Jenkins to use a specific mirror server to 
download plugins?

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/a7c3b73e-5c3b-4a7f-abb4-8e596f8acc76%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Plugin install issue in Jenkins

2018-08-09 Thread Rahul Sahotay
Hello there:

I have installed latest Jenkins on my Amazon Linux machine by using 
following commands:-

sudo wget -O /etc/yum.repos.d/jenkins.repo http:
//pkg.jenkins.io/redhat/jenkins.repo
sudo rpm --import https://pkg.jenkins.io/redhat/jenkins.io.key
sudo yum install jenkins -y

Jenkins came up successfully with v 2.136  , I clicked 
on install suggested plug-in and no plugin got installed :(

While installing it again from manage Jenkins, I am seeing the following 
errors:-

java.io.IOException: Server returned HTTP response code: 503 for URL: 
http://ftp-chi.osuosl.org/pub/jenkins/plugins/jenkins-design-language/1.7.2/jenkins-design-language.hpi
 at 
sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1894)
 at 
sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1492)
 at 
sun.net.www.protocol.http.HttpURLConnection.getHeaderField(HttpURLConnection.java:3000)
 at java.net.URLConnection.getHeaderFieldLong(URLConnection.java:629) at 
java.net.URLConnection.getContentLengthLong(URLConnection.java:501) at 
java.net.URLConnection.getContentLength(URLConnection.java:485) at 
hudson.model.UpdateCenter$UpdateCenterConfiguration.download(UpdateCenter.java:1130)
 Caused: java.io.IOException: Server returned HTTP response code: 503 for URL: 
http://ftp-chi.osuosl.org/pub/jenkins/plugins/jenkins-design-language/1.7.2/jenkins-design-language.hpi
 at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
 at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
 at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at 
sun.net.www.protocol.http.HttpURLConnection$10.run(HttpURLConnection.java:1944) 
at 
sun.net.www.protocol.http.HttpURLConnection$10.run(HttpURLConnection.java:1939) 
at java.security.AccessController.doPrivileged(Native Method) at 
sun.net.www.protocol.http.HttpURLConnection.getChainedException(HttpURLConnection.java:1938)
 at 
sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1508)
 at 
sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1492)
 at 
hudson.model.UpdateCenter$UpdateCenterConfiguration.download(UpdateCenter.java:1146)
 Caused: java.io.IOException: Failed to load 
http://updates.jenkins-ci.org/download/plugins/jenkins-design-language/1.7.2/jenkins-design-language.hpi
 to /var/lib/jenkins/plugins/jenkins-design-language.jpi.tmp at 
hudson.model.UpdateCenter$UpdateCenterConfiguration.download(UpdateCenter.java:1153)
 Caused: java.io.IOException: Failed to download from 
http://updates.jenkins-ci.org/download/plugins/jenkins-design-language/1.7.2/jenkins-design-language.hpi
 (redirected to: 
http://ftp-chi.osuosl.org/pub/jenkins/plugins/jenkins-design-language/1.7.2/jenkins-design-language.hpi)
 at 
hudson.model.UpdateCenter$UpdateCenterConfiguration.download(UpdateCenter.java:1187)
 at hudson.model.UpdateCenter$DownloadJob._run(UpdateCenter.java:1724) at 
hudson.model.UpdateCenter$InstallationJob._run(UpdateCenter.java:1987) at 
hudson.model.UpdateCenter$DownloadJob.run(UpdateCenter.java:1698) at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at 
java.util.concurrent.FutureTask.run(FutureTask.java:266) at 
hudson.remoting.AtmostOneThreadExecutor$Worker.run(AtmostOneThreadExecutor.java:112)
 at java.lang.Thread.run(Thread.java:748)


Here is my Java version and i can see this version /systemInfo


java version "1.8.0_181" Java(TM) SE Runtime Environment (build 1.8.0_181-b13) 
Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode)

Any suggestions please ?


-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/2ccecd2e-78db-4864-94a2-7ff4a67e7ae1%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


pipeline script and git parameter plugin

2018-08-09 Thread suoyuan . huang
Hi, I am running jenkins2 and pipeline for my job

My pipeline definition is pipeline script(not pipeline script from SCM) and 
I am using git as my scm system.

I want to specify a git branch before a build starts. How can I do this?

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/6230f100-f55f-4399-bb55-257a6fcda9b9%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Jenkins WebHook stopped working after I renamed my github Organization

2018-08-09 Thread thclpr
Hello everyone,

I'm not sure what happened but I noticed that after  we renamed our 
organization on github, our WebHooks for jenkins stopped working, I mean, 
we can see on Jenkins Logs that we receive the pull request:


Aug 09, 2018 10:47:55 AM INFO org.jenkinsci.plugins.github_branch_source.
PullRequestGHEventSubscriber onEventReceived PULL_REQUEST for 
https://github.company.com/org/repo 
from 00.00.00.00 ⇒ https://jenkins:8443/github-webhook/

Aug 09, 2018 10:47:59 AM INFO org.jenkinsci.plugins.github_branch_source.
PullRequestGHEventSubscriber onEvent
Received PULL_REQUEST for https://github.company.com/org/repo from 
00.00.00.00 ⇒ https://jenkins:8443/github-webhook/

Aug 09, 2018 10:48:00 AM INFO com.squareup.okhttp.internal.
Platform$JdkWithJettyBootPlatform getSelectedProtocol
ALPN callback dropped: SPDY and HTTP/2 are disabled. Is alpn-boot on the 
boot class path?



Anyone know how could i overcome this? Currently the Jenkins version that I'm 
using is 2.107.2 and latest Git Plugin/ GitHubPlugin and related.



thank you in advance.

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/496a0330-3e50-48f7-affd-ee0af1e6f14f%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


is there a scripted way for LDAP settings configuration from old jenkins server to new jenkins server

2018-08-09 Thread rajendraprasad reddy
Hi,
I am migrating jenkins server jew jenkins server,
We use LDAP authentication,
is there a scripted  way to LDAP settings configuration from old server tonew 
server?

-Rajendra

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/96a2b377-2b07-4344-a369-7971c0ab1de6%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: Remove / disable the Replay capability for Jenkins Pipeline consumers

2018-08-09 Thread Nalin Garg

If you give a group with access to "Job->Configure " or "Job/Configure " 
then " Run/Reply" get enabled implicitly(irrespective of whether 
" Run/Reply" is selected or not). This rule does make sense but seems like 
a trick. 

On Friday, August 3, 2018 at 5:19:24 AM UTC-7, Rushi Jawali wrote:
>
> Can you elaborate more on this?
>
> On Wednesday, 7 June 2017 03:01:35 UTC-5, Jim Coll wrote:
>>
>> Worked it out - the Run/Reply permission was getting greyed out when the 
>> Job/Configure permission is selected which implies that it's automatically 
>> granted with the latter permission.
>>
>> On Tuesday, June 6, 2017 at 6:45:54 PM UTC+1, Jim Coll wrote:
>>>
>>> I want to remove the ability for users of Jenkins Pipeline to be able to 
>>> modify the Jenkinsfile or other loaded pipeline scripts using the Replay 
>>> option. 
>>> I have tried removing the permission from the roles that I've assigned 
>>> to a user group but for some reason they still have the access to the 
>>> Replay option on the Console Output screen. I have also created a new role 
>>> without the permission but the option still shows up for the user.
>>>
>>> I also noticed that the Run/Replay permissions in the Manage Roles 
>>> Matrix is greyed out for some of the older Jenkins roles. 
>>>
>>> Has anyone else experienced this or similar issues? Any assistance would 
>>> be greatly appreciated!
>>>
>>> Thanks
>>>
>>

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/57e303a5-613c-4e28-95f0-0cfc5029f8a1%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


How much heap memory i need to give for tomcat server for running 5-6 parallel jobs on jenkins ?

2018-08-09 Thread rajendraprasad reddy
How much heap memory i need to give for tomcat server for running 5-6 
parallel jobs on jenkins ?

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/7eafd94a-2f0c-44f2-a05a-b6b8ed9ff7ab%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Jenkins- Build Date in Jenkins Email

2018-08-09 Thread Melissa Liana
Hi all,

I have an env variable called “BUILD_ID” redefined using the zentimestamp 
plugin in my Jenkins  setup and I 
use it in the configured jobs for various reasons.

I’m now trying to display the build date in the format “-MM-DD” in 
emails triggered by email extn plugin as part of post build. 


Thanks.

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/165ff00f-2fdf-476d-afc1-7cd34dd490a1%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


openshift-sync 1.0.24 build decision handler results in triggered jenkins workflow job in both source and synced jenkins instances

2018-08-09 Thread afeller
The openshift-sync plugin 

 can 
sync multiple OpenShift projects' JenkinsPipelineStrategy BuildConfigs to a 
single Jenkins instance ...

>
>- By default, the project running Jenkins is monitored, but additional 
>projects can be monitored by adding them to the Namespace list in the 
>"Manage Jenkins" -> "Configure System" section for this plugin. NOTE: the 
>service account associated with the Jenkins deployment must have the 
>edit role for each project monitored
>
> however I believe there is a pre-existing corner case when the remote 
projects monitored also run Jenkins causing the BuildDecisionHandler 

 logic 
to trigger a redundant pipeline execution in the remote project potentially 
causing problems for people.

[image: openshift-sync 1.0.24 BuildDecisionHandler race condition.png] 



Has anyone else ran into this before?  Since I can see about relocating 
where BuildConfigs live within our OS projects, I can work around this, but 
it would be good to see if there should be a fix or something done for it.

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/c0585332-14a6-4420-be3f-7e1a3af5dbfc%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


submitter option not worked Role in Jenkins pipeline syntax

2018-08-09 Thread Mahesh Wabale
I am using jenkins 2.73 with blueocean pipeline , trying role based 
authentication support .  

Here is Jenkins file syntax for submittor for manually approved step :
 
pipeline {
agent any
stages {
stage('Build') {
steps {
echo 'Building..'
input(message: 'Do you want to proceed', id: 'yes', ok: 'yes', submitter: "
developer", submitterParameter: "developer")
}
} } }
created globle role developer and assign role to login user . 
Above syntax works if i give comma separated list of users for submitter 
parameter 
.
But its not work role "developer" . Appreciate your help to resolve above 
issue . 

Getting error message as : "You need to be developer to submit this" 

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/4efaa778-bb57-46db-a791-1e6b314732ae%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Scripted pipeline aborts for unknown reasons

2018-08-09 Thread Markus "Shorty" Uckelmann

Hello all,

My Jenkinsfile aborts with an error and I can't find the reason. I ran 
out of ideas. Also I have no clue what the error means (neither Java nor 
Groovy is my strength). The curious thing is, when I remove the last 
block ("Clean") in the runPipeline function the job runs successfully.


Please let me know if more information is needed.

Any help would be much appreciated.


First line of the error is:

hudson.remoting.ProxyException: 
org.codehaus.groovy.runtime.typehandling.GroovyCastException: Cannot 
cast object '{clean-composer=null, clean-qucli=null}' with class 
'java.util.HashMap' to class 
'org.jenkinsci.plugins.pipeline.modeldefinition.model.Root' due to: 
groovy.lang.GroovyRuntimeException: Could not find matching constructor 
for: 
org.jenkinsci.plugins.pipeline.modeldefinition.model.Root(java.util.HashMap)



Jenkinsfile: 
https://gist.github.com/bemeyert/3f88cc0c458d9d8c2dc5e853fdf4e7b4#file-jenkinsfile-groovy


Complete error: 
https://gist.github.com/bemeyert/3f88cc0c458d9d8c2dc5e853fdf4e7b4#file-jenkins-error



Cheers, Shorty

--
You received this message because you are subscribed to the Google Groups "Jenkins 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/b7d856d6-a89b-5e1e-2414-44f3807ae0f5%40koeln.de.
For more options, visit https://groups.google.com/d/optout.


Re: Is it possible to re-run init.groovy.d scripts whilst Jenkins is running?

2018-08-09 Thread Ewelina Wilkosz
Hi Edd,

maybe you can have a look 
at https://github.com/jenkinsci/configuration-as-code-plugin
release 1.0 is coming soon, we have a number of alphas already out. maybe 
it can solve your issues - if not it's always good to hear what's missing :)

On Friday, August 3, 2018 at 10:08:52 AM UTC+2, Edd Grant wrote:
>
> Hi folks,
>
> We've spent quite a lot of effort automating the configuration of our 
> Jenkins (2.122) master using init.groovy.d scripts. It's working really 
> well apart from one caveat, being that (as far as I can tell) we have to 
> restart the master in order to kick off the scripts in the init.groovy.d 
> directory, thus causing downtime for our users.
>
> I would really like to find a way to be able to run these scripts on an 
> already running Jenkins master. Is there an API endpoint (or some other 
> means) which would trigger this process?
>
> Many thanks,
>
> Edd 
>

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/43ef2e44-00f9-453c-8d58-e1284404a28b%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.