Esempio n. 1
0
def createform(request):
	"""作成ボタン(ボリューム)"""

	#セッションからログインユーザ情報を取得する
	login_user = request.session['ss_usr_user']

	# エラー情報
	errors = []

	logger.info('データボリュームメニュー 新規作成フォーム作成 開始')

	# 入力フォーム
	form = volume_form.VolumeCreateForm()


	#入力フォーム用Availability Zone一覧
	try:
		#Eucalyptus基盤へのアクセサを生成する
		get_euca_info=GetEucalyptusInfo(login_user)
		# Availability Zone一覧を取得
		zones = get_euca_info.get_availabilityzones()
		# Availability Zone一覧を選択リストへ設定
		zonelist = []
		for zone in zones:
			sub_zone = []
			sub_zone.append(zone.name)
			sub_zone.append(zone.name)
			zonelist.append(sub_zone)
		form.fields['zone'].choices = zonelist
		request.session['ss_vol_avalabilityzonelist'] = zonelist
	except Exception, ex:
		# Eucalyptusエラー
		errors.append("Availability Zone情報の参照に失敗しました。")
		errors.append(euca_common.get_euca_error_msg('%s' % ex))
		logger.warn(errors)
Esempio n. 2
0
def createform_from_snapshot(request):
	"""作成ボタン(スナップショットボリューム)"""

	#セッションからログインユーザ情報を取得する
	login_user = request.session['ss_usr_user']

	# エラー情報
	errors = []

	logger.info('データボリュームメニュー スナップショットからボリューム作成フォーム作成 開始')

	#入力フォーム用スナップショット一覧
	snapshots = request.session['ss_vol_snapshots']
	snapshotChoice = [ [snapshot.id, snapshot.id] for snapshot in snapshots ]

	# スナップショット画面からの遷移の場合、初期状態でスナップショットID選択
	initialData = {}
	selectedSnapshot = request.session['ss_vol_snapshots_selected']
	if selectedSnapshot:
		initialData['snapshot'] = selectedSnapshot.id

	# 入力フォーム
	form = volume_form.VolumeCreateForm(initial=initialData)
	form.fields['snapshot'].choices = snapshotChoice

	#入力フォーム用Availability Zone一覧
	try:
		#Eucalyptus基盤へのアクセサを生成する
		get_euca_info=GetEucalyptusInfo(login_user)
		# Availability Zone一覧を取得
		zones = get_euca_info.get_availabilityzones()
		# Availability Zone一覧を選択リストへ設定
		zonelist = []
		for zone in zones:
			sub_zone = []
			sub_zone.append(zone.name)
			sub_zone.append(zone.name)
			zonelist.append(sub_zone)
		form.fields['zone'].choices = zonelist
		request.session['ss_vol_avalabilityzonelist'] = zonelist
	except Exception, ex:
		# Eucalyptusエラー
		errors.append("Availability Zone情報の参照に失敗しました。")
		errors.append(euca_common.get_euca_error_msg('%s' % ex))
		logger.warn(errors)