Trump hugs it out with Cruz in Houston: 'It got nasty! Then it ended' "You know we had our little difficulties," Trump said of Cruz at the rally.

HOUSTON -- If the 2016 Republican presidential primary was a bare-knuckle brawl, President Donald Trump did his best to bury the hatchet in Texas on Monday night.

"It got nasty," Trump told a raucous crowd in Houston before calling Senator Ted Cruz, his onetime foe, "a man who has become a really good friend."

"Nobody has helped me more" than Cruz, Trump proclaimed, heaping praise on the Republican senator as he embarks on the home stretch of his unexpectedly competitive reelection race against upstart Democratic Congressman Beto O’Rourke.

The once icy relationship between Senator Cruz and the president has thawed considerably since the tumult of the 2016 election, when the two battled it out for the Republican nomination. Since conceding to Trump and dropping out of the race, Cruz has aligned himself firmly behind the president as a reliable vote in the Senate.

President Trump responded in kind, thanking Cruz for his legislative support.

"Thanks to Ted, we now have a brand new member of the United States Supreme Court, Justice Brett Kavanaugh," Trump said.

Despite his best efforts on Monday, Trump's chummy relationship with Cruz may not be as iron-clad as the president suggests. Asked by ABC News over the weekend whether he considers Trump a friend or a foe, Cruz refrained from hanging his hat on the former.

"He's the president," Cruz told ABC News' Paula Faris in an interview that aired on "This Week" Sunday. "I work with the president in delivering on our promises."

The president made his presence felt in this heated race long before Air Force One touched down in the Lone Star State Monday evening, bashing O’Rourke on Twitter last week as a "total lightweight" and a "flake."

On Monday, Trump targeted O'Rourke again, calling him "a stone-cold phony."

"O'Rourke pretends to be a moderate, but he is actually a radical, open borders left winger," Trump said.

Despite O’Rourke’s national buzz as a progressive liberal over-performing in the conservative bastion of Texas, he still trails in most polls by nearly ten points. During a debate last week, the typically mild-mannered O’Rourke borrowed a nickname that Trump coined during the 2016 campaign, referring to Cruz as “Lyin’ Ted.”

Departing the White House on Monday afternoon, Trump renounced that moniker and coined a new nickname for Cruz.

"He's not lyin' Ted anymore, he's beautiful Ted,” Trump told ABC News Chief White House Correspondent Jonathan Karl. "I call him 'Texas Ted.'"

O’Rourke, who represents El Paso in the House of Representatives, also pledged to vote to impeach President Trump if given the chance.

Again mentioning his "10 percent tax cuts" for the middle class in addition to the "big tax cuts you've already gotten," Trump said that he has been working with Rep. Kevin Brady for three months, and said they are "putting it in next week."

"For all middle income people 10%" the president said.

Trump also spoke at length about the migrant caravan making its way from Central America through Mexico, with its ultimate destination the United States border -- just a couple hundred miles south of Houston -- accusing aspiring migrants of committing "an assault on our country."

"In that caravan you have some very bad people," Trump said. "We can't let that happen to our country."

Trump again claimed, without evidence, that the Democrats are behind the caravan.

"Democrats had something to do with it and now they said I think we made a big mistake. Because people are seeing how bad it is," Trump said, as he called the caravan "an assault on our country."

The total number of migrants now headed to the U.S. border is estimated to be about 7,200, the United Nations said Monday.

Recognizing the potential implications of a senate defeat in a state Trump carried by nine points in 2016, the president set his sights on Cruz’s race back in August, announcing his intention "hold a major rally" in "the biggest stadium in Texas we can find."

The Trump campaign fell slightly short of that promise, initially booking an 8,000-seat arena in Houston’s suburbs. But after a “HUGE and unprecedented” response to ticket sales, Trump campaign manager Brad Parscale announced a late change in venue to accommodate a larger audience, landing on Houston’s 18,000-seat basketball arena, the Toyota Center.

As President Trump took the stage, Houston's Police Chief Art Acevedo tweeted that approximately 3,000 people watched the rally from outside the arena.