Is it required to train the model in entire data after cross validation? I have a model trained as follows.
random_search=RandomizedSearchCV(classifier, param_distributions=params,\
     scoring='f1',
     n_iter=100, cv=5, verbose=3, random_state=42, n_jobs=-1)
random_search.fit(X, y)
final_classifier=random_search.best_estimator_

My question is, do I have to train final_classifier on entire data before putting it into production?
i.e. Should I do
final_clssifier.fit(X,y)

Or random_search returning the model after fitting it again on entire data?
I really appreciate any help you can provide.

It slightly depends on what you mean by "entire data".
In the "train, cross-validate, test" paradigm, where the cross-validation folds are taken from the training set, once you have selected your model and hyper-parameters you should then train that model on the full training set and finally (and only once) test it against the test set you set aside at the beginning to see how good this final model is on unseen data.
Whether you then
(a) use that tested model in production, or
(b) retrain it (with the same model and hyper-parameters) on the combined training and test set
is your choice. If you have sufficient data and your test data was similar to your training set, then it should not make much difference.  You would not have a test of the accuracy of an option (b) model on out-of-sample data until you have new previously unseen data, but that may not be an issue and you may want the small theoretical benefit of training on slightly more data.
