package main

import "AutoSSO/feishu"

/*
deleted_permission.txt --》 存储过期权限集的申请ID，在 AWS 中已经对这些申请 ID 的权限做了回收
instancesid.txt        --》 存储新产生的实例ID，监控时间范围当前时间到 30 分钟之前
start_time.txt         --》 清理过期权限申请的开始时间戳，这里设置的是 2022-05-01 00:00:00
*/
func main() {

	//初始化一些变量
	feishu.Csh_Init()

	//监控过期的权限集
	go feishu.Monitor_History_Instance()
	//监控 wait_delete_up，对于过期的权限集予以移除处理
	go feishu.Monitor_Wait_Delete_up()

	//监控新的权限集申请
	go feishu.Check_New_Instance_IDs()
	go feishu.Monitor_Addper()

	//飞书权限通知
	go feishu.Send_SSO_Service_Notice()

	//GCP 权限映射表编辑自动同步 GCP 权限
	go feishu.MonitorIniChanges()

	//program hangs
	select {}

	/*
		data, err := feishu.Instanceid_To_Feishudata("01DECC38-4727-4748-8BE8-119CD9053528")
		if err != nil {
			fmt.Println(err)
			return
		}
		fmt.Println(data)
	*/

	//https://next.api.aliyun.com/api/cloudsso/2021-05-15/CreateAccessAssignment?RegionId=cn-shanghai&params={%22DirectoryId%22:%22d-00ts1z0rjv32%22}

	// some test function

	// 添加权限
	/*
		err := feishu.Alibaba_Assign_permissions("5480039859161595", "dong.zhang@pingcap.com", "DBaaS-Prod-Admin-Role")
		if err == nil {
			fmt.Println("assign permissions success")
		} else {
			fmt.Println(err)
		}
	*/

	// 移除权限

	/*

		err := feishu.Alibaba_Delete_Permissions("5480039859161595", "dong.zhang@pingcap.com", "DBaaS-Prod-Admin-Role")
		if err == nil {
			fmt.Println("delete permissions success")
		} else {
			fmt.Println(err)
		}

	*/
}
