diff --git a/testgres/node.py b/testgres/node.py
index d1784cb9..e5e8fd5f 100644
--- a/testgres/node.py
+++ b/testgres/node.py
@@ -1639,7 +1639,7 @@ def set_auto_conf(self, options, config='postgresql.auto.conf', rm_options={}):
 
         self.os_ops.write(path, auto_conf, truncate=True)
 
-    def upgrade_from(self, old_node):
+    def upgrade_from(self, old_node, options=None):
         """
         Upgrade this node from an old node using pg_upgrade.
 
@@ -1652,6 +1652,9 @@ def upgrade_from(self, old_node):
         if not os.path.exists(self.data_dir):
             self.init()
 
+        if not options:
+            options = []
+
         pg_upgrade_binary = self._get_bin_path("pg_upgrade")
 
         if not os.path.exists(pg_upgrade_binary):
@@ -1666,6 +1669,7 @@ def upgrade_from(self, old_node):
             "--old-port", str(old_node.port),
             "--new-port", str(self.port),
         ]
+        upgrade_command += options
 
         return self.os_ops.exec_command(upgrade_command)