code: protected boolean doTopologyAssignment(TopologyAssignEvent event) {
          Assignment assignment;
          try {
              Assignment oldAssignment = null;
              boolean isReassign = event.isScratch();
              if (isReassign) {
                  oldAssignment = nimbusData.getStormClusterState().assignment_info(event.getTopologyId(), null);
              }
              assignment = mkAssignment(event);
  
              pushTaskStartEvent(oldAssignment, assignment, event);
  
              if (!isReassign) {
                  setTopologyStatus(event);
              }
          } catch (Throwable e) {
              LOG.error("Failed to assign topology " + event.getTopologyId(), e);
              event.fail(e.getMessage());
              return false;
          }
  
          if (assignment != null)
              backupAssignment(assignment, event);
          event.done();
          return true;
      }
docs: Create/Update topology assignment set topology status