All Implemented Interfaces:
Configurable, KeyVal.Mixin, UtilsMixin, Iterable<Material>, Collection<Material>, List<Material>

public class Materials extends CollectionNode<Material>
  • Constructor Details

    • Materials

      public Materials()
  • Method Details

    • svn

      Creates an svn material which this pipeline polls on.

      /*
       * Copyright 2022 Thoughtworks, Inc.
       *
       * Licensed under the Apache License, Version 2.0 (the "License");
       * you may not use this file except in compliance with the License.
       * You may obtain a copy of the License at
       *
       *     http://www.apache.org/licenses/LICENSE-2.0
       *
       * Unless required by applicable law or agreed to in writing, software
       * distributed under the License is distributed on an "AS IS" BASIS,
       * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
       * See the License for the specific language governing permissions and
       * limitations under the License.
       */


        pipeline('docs-website') {
          materials {
            svn {
              url = 'https://svn.example.com/my-project/trunk'
              username = 'bob'
              // see https://api.gocd.org/current/#encrypt-a-plain-text-value
              encryptedPassword = 'aSdiFgRRZ6A='
            }
          }
        }

    • svn

      Creates an svn material which this pipeline polls on.

      /*
       * Copyright 2022 Thoughtworks, Inc.
       *
       * Licensed under the Apache License, Version 2.0 (the "License");
       * you may not use this file except in compliance with the License.
       * You may obtain a copy of the License at
       *
       *     http://www.apache.org/licenses/LICENSE-2.0
       *
       * Unless required by applicable law or agreed to in writing, software
       * distributed under the License is distributed on an "AS IS" BASIS,
       * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
       * See the License for the specific language governing permissions and
       * limitations under the License.
       */


        pipeline('docs-website') {
          materials {
            svn {
              url = 'https://svn.example.com/my-project/trunk'
              username = 'bob'
              // see https://api.gocd.org/current/#encrypt-a-plain-text-value
              encryptedPassword = 'aSdiFgRRZ6A='
            }
          }
        }

    • hg

      Creates a mercurial/hg material which this pipeline polls on.

      /*
       * Copyright 2022 Thoughtworks, Inc.
       *
       * Licensed under the Apache License, Version 2.0 (the "License");
       * you may not use this file except in compliance with the License.
       * You may obtain a copy of the License at
       *
       *     http://www.apache.org/licenses/LICENSE-2.0
       *
       * Unless required by applicable law or agreed to in writing, software
       * distributed under the License is distributed on an "AS IS" BASIS,
       * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
       * See the License for the specific language governing permissions and
       * limitations under the License.
       */


        pipeline('docs-website') {
          materials {
            hg {
              url = 'https://hg.example.com/myproject##myBranch'
              blacklist = ['README.md', 'docs/**']
              username = 'bob'
              // see https://api.gocd.org/current/#encrypt-a-plain-text-value
              encryptedPassword = 'aSdiFgRRZ6A='
            }
          }
        }

    • hg

      Creates a mercurial/hg material which this pipeline polls on.

      /*
       * Copyright 2022 Thoughtworks, Inc.
       *
       * Licensed under the Apache License, Version 2.0 (the "License");
       * you may not use this file except in compliance with the License.
       * You may obtain a copy of the License at
       *
       *     http://www.apache.org/licenses/LICENSE-2.0
       *
       * Unless required by applicable law or agreed to in writing, software
       * distributed under the License is distributed on an "AS IS" BASIS,
       * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
       * See the License for the specific language governing permissions and
       * limitations under the License.
       */


        pipeline('docs-website') {
          materials {
            hg {
              url = 'https://hg.example.com/myproject##myBranch'
              blacklist = ['README.md', 'docs/**']
              username = 'bob'
              // see https://api.gocd.org/current/#encrypt-a-plain-text-value
              encryptedPassword = 'aSdiFgRRZ6A='
            }
          }
        }

    • p4

      Creates a perforce/hg material which this pipeline polls on.

      /*
       * Copyright 2022 Thoughtworks, Inc.
       *
       * Licensed under the Apache License, Version 2.0 (the "License");
       * you may not use this file except in compliance with the License.
       * You may obtain a copy of the License at
       *
       *     http://www.apache.org/licenses/LICENSE-2.0
       *
       * Unless required by applicable law or agreed to in writing, software
       * distributed under the License is distributed on an "AS IS" BASIS,
       * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
       * See the License for the specific language governing permissions and
       * limitations under the License.
       */


        pipeline('docs-website') {
          materials {
            p4 {
              url = 'https://p4.example.com/gocd/gocd'
              branch = 'develop'
            }
          }
        }

    • p4

      Creates a perforce/hg material which this pipeline polls on.

      /*
       * Copyright 2022 Thoughtworks, Inc.
       *
       * Licensed under the Apache License, Version 2.0 (the "License");
       * you may not use this file except in compliance with the License.
       * You may obtain a copy of the License at
       *
       *     http://www.apache.org/licenses/LICENSE-2.0
       *
       * Unless required by applicable law or agreed to in writing, software
       * distributed under the License is distributed on an "AS IS" BASIS,
       * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
       * See the License for the specific language governing permissions and
       * limitations under the License.
       */


        pipeline('docs-website') {
          materials {
            p4 {
              url = 'https://p4.example.com/gocd/gocd'
              branch = 'develop'
            }
          }
        }

    • git

      Creates a git material which this pipeline polls on. /*
       * Copyright 2022 Thoughtworks, Inc.
       *
       * Licensed under the Apache License, Version 2.0 (the "License");
       * you may not use this file except in compliance with the License.
       * You may obtain a copy of the License at
       *
       *     http://www.apache.org/licenses/LICENSE-2.0
       *
       * Unless required by applicable law or agreed to in writing, software
       * distributed under the License is distributed on an "AS IS" BASIS,
       * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
       * See the License for the specific language governing permissions and
       * limitations under the License.
       */


        pipeline('docs-website') {
          materials {
            git {
              url = 'https://github.com/gocd/gocd'
              branch = 'develop'
              blacklist = ['README.md', 'docs/**']
              username = 'bob'
              // see https://api.gocd.org/current/#encrypt-a-plain-text-value
              encryptedPassword = 'aSdiFgRRZ6A='
            }
          }
        }
    • git

      Creates a git material which this pipeline polls on. /*
       * Copyright 2022 Thoughtworks, Inc.
       *
       * Licensed under the Apache License, Version 2.0 (the "License");
       * you may not use this file except in compliance with the License.
       * You may obtain a copy of the License at
       *
       *     http://www.apache.org/licenses/LICENSE-2.0
       *
       * Unless required by applicable law or agreed to in writing, software
       * distributed under the License is distributed on an "AS IS" BASIS,
       * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
       * See the License for the specific language governing permissions and
       * limitations under the License.
       */


        pipeline('docs-website') {
          materials {
            git {
              url = 'https://github.com/gocd/gocd'
              branch = 'develop'
              blacklist = ['README.md', 'docs/**']
              username = 'bob'
              // see https://api.gocd.org/current/#encrypt-a-plain-text-value
              encryptedPassword = 'aSdiFgRRZ6A='
            }
          }
        }
    • tfs

      Creates a tfs material which this pipeline polls on. /*
       * Copyright 2022 Thoughtworks, Inc.
       *
       * Licensed under the Apache License, Version 2.0 (the "License");
       * you may not use this file except in compliance with the License.
       * You may obtain a copy of the License at
       *
       *     http://www.apache.org/licenses/LICENSE-2.0
       *
       * Unless required by applicable law or agreed to in writing, software
       * distributed under the License is distributed on an "AS IS" BASIS,
       * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
       * See the License for the specific language governing permissions and
       * limitations under the License.
       */


        pipeline('docs-website') {
          materials {
            tfs {
              url = 'http://10.21.3.210:8080/tfs'
              project = 'MyProject'
              domain = 'MyDomain'
              username = 'bob'
              encryptedPassword = 'aSdiFgRRZ6A='
            }
          }
        }
    • tfs

      Creates a tfs material which this pipeline polls on. /*
       * Copyright 2022 Thoughtworks, Inc.
       *
       * Licensed under the Apache License, Version 2.0 (the "License");
       * you may not use this file except in compliance with the License.
       * You may obtain a copy of the License at
       *
       *     http://www.apache.org/licenses/LICENSE-2.0
       *
       * Unless required by applicable law or agreed to in writing, software
       * distributed under the License is distributed on an "AS IS" BASIS,
       * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
       * See the License for the specific language governing permissions and
       * limitations under the License.
       */


        pipeline('docs-website') {
          materials {
            tfs {
              url = 'http://10.21.3.210:8080/tfs'
              project = 'MyProject'
              domain = 'MyDomain'
              username = 'bob'
              encryptedPassword = 'aSdiFgRRZ6A='
            }
          }
        }
    • dependency

    • configRepo

    • configRepo

    • pluggable

    • pluggable

    • pkg

    • pkg

    • githubPR

    • githubPR

    • equals

      public boolean equals(Object o)
      Specified by:
      equals in interface Collection<Material>
      Specified by:
      equals in interface List<Material>
      Overrides:
      equals in class CollectionNode<Material>
    • hashCode

      public int hashCode()
      Specified by:
      hashCode in interface Collection<Material>
      Specified by:
      hashCode in interface List<Material>
      Overrides:
      hashCode in class CollectionNode<Material>