Revision aeefe835

b/lib/bootstrap.py
112 112

  
113 113

  
114 114
def GenerateClusterCrypto(new_cluster_cert, new_rapi_cert, new_confd_hmac_key,
115
                          rapi_cert_pem=None):
115
                          rapi_cert_pem=None,
116
                          nodecert_file=constants.NODED_CERT_FILE,
117
                          rapicert_file=constants.RAPI_CERT_FILE,
118
                          hmackey_file=constants.CONFD_HMAC_KEY):
116 119
  """Updates the cluster certificates, keys and secrets.
117 120

  
118 121
  @type new_cluster_cert: bool
......
123 126
  @param new_confd_hmac_key: Whether to generate a new HMAC key
124 127
  @type rapi_cert_pem: string
125 128
  @param rapi_cert_pem: New RAPI certificate in PEM format
129
  @type nodecert_file: string
130
  @param nodecert_file: optional override of the node cert file path
131
  @type rapicert_file: string
132
  @param rapicert_file: optional override of the rapi cert file path
133
  @type hmackey_file: string
134
  @param hmackey_file: optional override of the hmac key file path
126 135

  
127 136
  """
128 137
  # noded SSL certificate
129
  cluster_cert_exists = os.path.exists(constants.NODED_CERT_FILE)
138
  cluster_cert_exists = os.path.exists(nodecert_file)
130 139
  if new_cluster_cert or not cluster_cert_exists:
131 140
    if cluster_cert_exists:
132
      utils.CreateBackup(constants.NODED_CERT_FILE)
141
      utils.CreateBackup(nodecert_file)
133 142

  
134
    logging.debug("Generating new cluster certificate at %s",
135
                  constants.NODED_CERT_FILE)
136
    GenerateSelfSignedSslCert(constants.NODED_CERT_FILE)
143
    logging.debug("Generating new cluster certificate at %s", nodecert_file)
144
    GenerateSelfSignedSslCert(nodecert_file)
137 145

  
138 146
  # confd HMAC key
139
  if new_confd_hmac_key or not os.path.exists(constants.CONFD_HMAC_KEY):
140
    logging.debug("Writing new confd HMAC key to %s", constants.CONFD_HMAC_KEY)
141
    GenerateHmacKey(constants.CONFD_HMAC_KEY)
147
  if new_confd_hmac_key or not os.path.exists(hmackey_file):
148
    logging.debug("Writing new confd HMAC key to %s", hmackey_file)
149
    GenerateHmacKey(hmackey_file)
142 150

  
143 151
  # RAPI
144
  rapi_cert_exists = os.path.exists(constants.RAPI_CERT_FILE)
152
  rapi_cert_exists = os.path.exists(rapicert_file)
145 153

  
146 154
  if rapi_cert_pem:
147 155
    # Assume rapi_pem contains a valid PEM-formatted certificate and key
148
    logging.debug("Writing RAPI certificate at %s",
149
                  constants.RAPI_CERT_FILE)
150
    utils.WriteFile(constants.RAPI_CERT_FILE, data=rapi_cert_pem, backup=True)
156
    logging.debug("Writing RAPI certificate at %s", rapicert_file)
157
    utils.WriteFile(rapicert_file, data=rapi_cert_pem, backup=True)
151 158

  
152 159
  elif new_rapi_cert or not rapi_cert_exists:
153 160
    if rapi_cert_exists:
154
      utils.CreateBackup(constants.RAPI_CERT_FILE)
161
      utils.CreateBackup(rapicert_file)
155 162

  
156
    logging.debug("Generating new RAPI certificate at %s",
157
                  constants.RAPI_CERT_FILE)
158
    GenerateSelfSignedSslCert(constants.RAPI_CERT_FILE)
163
    logging.debug("Generating new RAPI certificate at %s", rapicert_file)
164
    GenerateSelfSignedSslCert(rapicert_file)
159 165

  
160 166

  
161 167
def _InitGanetiServerSetup(master_name):
b/tools/cfgupgrade
1 1
#!/usr/bin/python
2 2
#
3 3

  
4
# Copyright (C) 2007, 2008, 2009 Google Inc.
4
# Copyright (C) 2007, 2008, 2009, 2010 Google Inc.
5 5
#
6 6
# This program is free software; you can redistribute it and/or modify
7 7
# it under the terms of the GNU General Public License as published by
......
174 174
                    backup=True)
175 175

  
176 176
    if not options.dry_run:
177
      bootstrap.GenerateClusterCrypto(False, False, False)
177
      bootstrap.GenerateClusterCrypto(False, False, False,
178
                                      nodecert_file=options.SERVER_PEM_PATH,
179
                                      rapicert_file=options.RAPI_CERT_FILE,
180
                                      hmackey_file=options.CONFD_HMAC_KEY)
178 181

  
179 182
  except:
180 183
    logging.critical("Writing configuration failed. It is probably in an"

Also available in: Unified diff