diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 8d875fe..0760a5c 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -1,16 +1,16 @@
-If you would like to contribute to the development of OpenStack,
+If you would like to contribute to the development of OpenDev,
 you must follow the steps in this page:
 
-   [https://docs.openstack.org/infra/manual/developers.html](https://docs.openstack.org/infra/manual/developers.html)
+   [https://docs.opendev.org/opendev/infra-manual/latest/developers.html](https://docs.opendev.org/opendev/infra-manual/latest/developers.html)
 
 If you already have a good understanding of how the system works and your
-OpenStack accounts are set up, you can skip to the development workflow section
-of this documentation to learn how changes to OpenStack should be submitted for
+OpenDev accounts are set up, you can skip to the development workflow section
+of this documentation to learn how changes to OpenDev should be submitted for
 review via the Gerrit tool:
 
-   [https://docs.openstack.org/infra/manual/developers.html#development-workflow](https://docs.openstack.org/infra/manual/developers.html#development-workflow)
+   [https://docs.opendev.org/opendev/infra-manual/latest/developers.html#development-workflow](https://docs.opendev.org/opendev/infra-manual/latest/developers.html#development-workflow)
 
 Pull requests submitted through GitHub will be ignored.
 
-Bugs should be filed [on StoryBoard](https://storyboard.openstack.org/#!/project/722),
+Bugs should be filed [on StoryBoard](https://storyboard.openstack.org/#!/project/opendev/jeepyb),
 not in GitHub's issue tracker.
diff --git a/jeepyb/cmd/close_pull_requests.py b/jeepyb/cmd/close_pull_requests.py
index 4ead4ad..a113c34 100644
--- a/jeepyb/cmd/close_pull_requests.py
+++ b/jeepyb/cmd/close_pull_requests.py
@@ -1,5 +1,5 @@
 #! /usr/bin/env python
-# Copyright (C) 2011 OpenStack, LLC.
+# Copyright (C) 2011 OpenStack Foundation
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -16,15 +16,9 @@
 # Github pull requests closer reads a project config file called projects.yaml
 # It should look like:
 
-# - homepage: http://openstack.org
-#   team-id: 153703
-#   has-wiki: False
-#   has-issues: False
-#   has-downloads: False
-# ---
 # - project: PROJECT_NAME
 #   options:
-#   - has-pull-requests
+#     - has-pull-requests
 
 # Github authentication information is read from github.secure.config,
 # which should look like:
@@ -48,16 +42,16 @@
 import jeepyb.projects as p
 import jeepyb.utils as u
 
-MESSAGE = """Thank you for contributing to %(project)s!
+MESSAGE = """Thank you for your interest in %(project)s!
 
 %(project)s uses Gerrit for code review.
 
-If you have never contributed to OpenStack before make sure you have read the
-getting started documentation:
-https://docs.openstack.org/infra/manual/developers.html#getting-started
+If you have never contributed to an OpenDev hosted project before
+make sure you have read the getting started documentation:
+https://docs.opendev.org/opendev/infra-manual/latest/developers.html#getting-started
 
 Otherwise please visit
-https://docs.openstack.org/infra/manual/developers.html#development-workflow
+https://docs.opendev.org/opendev/infra-manual/latest/developers.html#development-workflow
 and follow the instructions there to upload your change to Gerrit.
 """
 
diff --git a/jeepyb/cmd/expire_old_reviews.py b/jeepyb/cmd/expire_old_reviews.py
index 5a62c05..9bbc84c 100644
--- a/jeepyb/cmd/expire_old_reviews.py
+++ b/jeepyb/cmd/expire_old_reviews.py
@@ -1,5 +1,5 @@
 #!/usr/bin/env python
-# Copyright (c) 2012 OpenStack, LLC.
+# Copyright (c) 2012 OpenStack Foundation
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
diff --git a/jeepyb/cmd/manage_projects.py b/jeepyb/cmd/manage_projects.py
index caa9388..009f2db 100644
--- a/jeepyb/cmd/manage_projects.py
+++ b/jeepyb/cmd/manage_projects.py
@@ -1,5 +1,5 @@
 #! /usr/bin/env python
-# Copyright (C) 2011 OpenStack, LLC.
+# Copyright (C) 2011 OpenStack Foundation
 # Copyright (c) 2012 Hewlett-Packard Development Company, L.P.
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
@@ -16,20 +16,17 @@
 
 # manage_projects.py reads a config file called projects.ini
 # It should look like:
-
+#
 # [projects]
-# homepage=http://openstack.org
-# gerrit-host=review.openstack.org
-# local-git-dir=/var/lib/git
-# gerrit-key=/home/gerrit2/review_site/etc/ssh_host_rsa_key
-# gerrit-committer=Project Creator <openstack-infra@lists.openstack.org>
-# gerrit-replicate=True
-# has-github=True
-# has-wiki=False
-# has-issues=False
-# has-downloads=False
+# homepage=https://opendev.org
 # acl-dir=/home/gerrit2/acls
-# acl-base=/home/gerrit2/acls/project.config
+# local-git-dir=/opt/lib/git
+# jeepyb-cache-dir=/opt/lib/jeepyb
+# gerrit-host=review.opendev.org
+# gerrit-user=project-creator
+# gerrit-committer=Project Creator <project-creator@opendev.org>
+# gerrit-key=/home/gerrit2/review_site/etc/ssh_project_rsa_key
+# has-github=false
 #
 # manage_projects.py reads a project listing file called projects.yaml
 # It should look like:
@@ -40,7 +37,7 @@
 #    - has-downloads
 #    - has-pull-requests
 #    - track-upstream
-#   homepage: Some homepage that isn't http://openstack.org
+#   homepage: Some homepage that isn't http://opendev.org
 #   description: This is a great project
 #   upstream: https://gerrit.googlesource.com/gerrit
 #   upstream-prefix: upstream
@@ -74,7 +71,7 @@
 orgs = None
 
 # Gerrit system groups as defined:
-# https://review.openstack.org/Documentation/access-control.html#system_groups
+# https://review.opendev.org/Documentation/access-control.html#system_groups
 # Need to set Gerrit system group's uuid to the format it expects.
 GERRIT_SYSTEM_GROUPS = {
     'Anonymous Users': 'global:Anonymous-Users',
diff --git a/jeepyb/cmd/notify_impact.py b/jeepyb/cmd/notify_impact.py
index 5b402f5..389d3de 100644
--- a/jeepyb/cmd/notify_impact.py
+++ b/jeepyb/cmd/notify_impact.py
@@ -1,5 +1,5 @@
 #!/usr/bin/env python
-# Copyright (c) 2012 OpenStack, LLC.
+# Copyright (c) 2012 OpenStack Foundation
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -19,7 +19,7 @@
 
 # You want to test this? I use a command line a bit like this:
 #     python notify_impact.py --change 55607 \
-#     --change-url https://review.openstack.org/55607 --project nova/ \
+#     --change-url https://review.opendev.org/55607 --project nova/ \
 #     --branch master --commit c262de4417d48be599c3a7496ef94de5c84b188c \
 #     --impact DocImpact --dest-address none@localhost --dryrun \
 #     --config foo.yaml \
@@ -132,7 +132,7 @@
                    'the documentation bugs against it. If this needs '
                    'changing, the docimpact-group option needs to be added '
                    'for the project. You can ask the '
-                   'OpenStack infra team (#openstack-infra on freenode) for '
+                   'OpenStack TaCT SIG (#openstack-infra on freenode) for '
                    'help if you need to.\n'
                    % args.project)
         lp_project = project_name
@@ -291,7 +291,7 @@
 
     # SMTP configuration
     parser.add_argument('--smtp-from', dest='smtp_from',
-                        default='gerrit2@review.openstack.org')
+                        default='gerrit2@review.opendev.org')
 
     parser.add_argument('--smtp-host', dest='smtp_host', default="localhost")
     parser.add_argument('--smtp-port', dest='smtp_port')
diff --git a/jeepyb/cmd/track_upstream.py b/jeepyb/cmd/track_upstream.py
index 65751b7..cbd0721 100644
--- a/jeepyb/cmd/track_upstream.py
+++ b/jeepyb/cmd/track_upstream.py
@@ -1,5 +1,5 @@
 #! /usr/bin/env python
-# Copyright (C) 2011 OpenStack, LLC.
+# Copyright (C) 2011 OpenStack Foundation
 # Copyright (c) 2012 Hewlett-Packard Development Company, L.P.
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
@@ -18,18 +18,15 @@
 # It should look like:
 
 # [projects]
-# homepage=http://openstack.org
-# gerrit-host=review.openstack.org
-# local-git-dir=/var/lib/git
-# gerrit-key=/home/gerrit2/review_site/etc/ssh_host_rsa_key
-# gerrit-committer=Project Creator <openstack-infra@lists.openstack.org>
-# gerrit-replicate=True
-# has-github=True
-# has-wiki=False
-# has-issues=False
-# has-downloads=False
+# homepage=https://opendev.org
 # acl-dir=/home/gerrit2/acls
-# acl-base=/home/gerrit2/acls/project.config
+# local-git-dir=/opt/lib/git
+# jeepyb-cache-dir=/opt/lib/jeepyb
+# gerrit-host=review.opendev.org
+# gerrit-user=project-creator
+# gerrit-committer=Project Creator <project-creator@opendev.org>
+# gerrit-key=/home/gerrit2/review_site/etc/ssh_project_rsa_key
+# has-github=false
 #
 # manage_projects.py reads a project listing file called projects.yaml
 # It should look like:
@@ -40,7 +37,7 @@
 #    - has-downloads
 #    - has-pull-requests
 #    - track-upstream
-#   homepage: Some homepage that isn't http://openstack.org
+#   homepage: Some homepage that isn't http://opendev.org
 #   description: This is a great project
 #   upstream: https://gerrit.googlesource.com/gerrit
 #   upstream-prefix: upstream
diff --git a/jeepyb/cmd/update_blueprint.py b/jeepyb/cmd/update_blueprint.py
index 22efa84..6de6612 100644
--- a/jeepyb/cmd/update_blueprint.py
+++ b/jeepyb/cmd/update_blueprint.py
@@ -1,5 +1,5 @@
 #!/usr/bin/env python
-# Copyright (c) 2011 OpenStack, LLC.
+# Copyright (c) 2011 OpenStack Foundation
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
diff --git a/jeepyb/cmd/update_bug.py b/jeepyb/cmd/update_bug.py
index 64fa536..b756304 100644
--- a/jeepyb/cmd/update_bug.py
+++ b/jeepyb/cmd/update_bug.py
@@ -1,5 +1,5 @@
 #!/usr/bin/env python
-# Copyright (c) 2011 OpenStack, LLC.
+# Copyright (c) 2011 OpenStack Foundation
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -73,8 +73,7 @@
                               submitter, branch, git_log, related=False):
     subject = '%s merged to %s (%s)' % (fix_or_related_fix(related),
                                         u.short_project_name(project), branch)
-    git_url = 'https://git.openstack.org/cgit/%s/commit/?id=%s' % (project,
-                                                                   commit)
+    git_url = 'https://opendev.org/%s/commit/%s' % (project, commit)
     body = '''Reviewed:  %s
 Committed: %s
 Submitter: %s
diff --git a/jeepyb/cmd/welcome_message.py b/jeepyb/cmd/welcome_message.py
index b28f5e1..4e6b779 100644
--- a/jeepyb/cmd/welcome_message.py
+++ b/jeepyb/cmd/welcome_message.py
@@ -18,7 +18,7 @@
 #
 # For example, this might be called as follows
 # python welcome_message.py --change Ia1fea1eab3976f1a9cb89ceb3ce1c6c6a7e79c42
-# --change-url \ https://review-dev.openstack.org/81 --project gtest-org/test \
+# --change-url \ https://review-dev.opendev.org/81 --project gtest-org/test \
 # --branch master --uploader User A. Example (user@example.com) --commit \
 # 05508ae633852469d2fd7786a3d6f1d06f87055b --patchset 1 patchset-merged \
 # --ssh-user=user --ssh-key=/home/user/.ssh/id_rsa
@@ -88,7 +88,8 @@
 Thanks again for participating in OpenDev, we look forward to seeing you
 around.
 
-Workflow Guide: https://docs.openstack.org/infra/manual/developers.html
+Workflow Guide:
+https://docs.opendev.org/opendev/infra-manual/latest/developers.html
 """
 
     if message_file:
diff --git a/jeepyb/gerritdb.py b/jeepyb/gerritdb.py
index 8c06d2c..dade73c 100644
--- a/jeepyb/gerritdb.py
+++ b/jeepyb/gerritdb.py
@@ -1,5 +1,5 @@
 #! /usr/bin/env python
-# Copyright (C) 2011 OpenStack, LLC.
+# Copyright (C) 2011 OpenStack Foundation
 # Copyright (c) 2012 Hewlett-Packard Development Company, L.P.
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
diff --git a/setup.cfg b/setup.cfg
index 24207d0..73ab438 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -3,9 +3,9 @@
 summary = Tools for managing gerrit projects and external sources.
 description-file =
     README.rst
-author = OpenStack Infrastructure Team
-author-email = openstack-infra@lists.openstack.org
-home-page = https://docs.openstack.org/infra/system-config/
+author = OpenDev Contributors
+author-email = service-discuss@lists.opendev.org
+home-page = https://docs.opendev.org/opendev/system-config/
 classifier =
     Intended Audience :: Information Technology
     Intended Audience :: System Administrators
