refer to my ci build