JFIF$        dd7 

Viewing File: /usr/local/cpanel/scripts/regenerate_tokens

#!/usr/local/cpanel/3rdparty/bin/perl

# cpanel - scripts/regenerate_tokens               Copyright 2022 cPanel, L.L.C.
#                                                           All rights reserved.
# copyright@cpanel.net                                         http://cpanel.net
# This code is subject to the cPanel license. Unauthorized copying is prohibited

package scripts::regenerate_tokens;

use cPstrict;
use Cpanel::Imports;
use Cpanel::ImagePrep         ();
use Cpanel::ImagePrep::Common ();
use Cpanel::ImagePrep::Output ();

use base 'Cpanel::HelpfulScript';
use constant _OPTIONS => ( 'force', 'no-precheck' );

=head1 NAME

scripts/regenerate_tokens

=head1 SYNOPSIS

usage: /usr/local/cpanel/scripts/regenerate_tokens [--force] [--no-precheck]

This script regenerates secret data on a virtual machine that is not
handled properly by most virtual machine templating systems. It is meant
to be used on production instances that already exist with these deficiencies.
Because of this, certain types of actions (those labeled "non-repair only" due
to their destructive nature) will be skipped, and you cannot rely on this script
to take care of all your post-snapshot cleanup needs.

To prevent such problems from occurring in the first place when creating
snapshots, see C<scripts/snapshot_prep> and C<scripts/post_snapshot>.
These scripts also cover tasks of the "non-repair only" type.

Options:

--force: Rerun all cleanups regardless of whether they have run before.

--no-precheck: Do not check whether this server is a cloud instance. This
may be needed on servers not using cloud-init.

=cut

exit __PACKAGE__->new(@ARGV)->run unless caller;

sub run {
    my ($self) = @_;

    if ( !$self->getopt('no-precheck') && !Cpanel::ImagePrep::Common::is_cloud() ) {
        logger()->info('This system does not appear to be a cloud instance.');
        return 0;
    }

    my $force = $self->getopt('force');

    my ( $table,  $cb )     = Cpanel::ImagePrep::Output->get_status_output_callback();
    my ( $status, $reason ) = Cpanel::ImagePrep::regenerate_tokens(
        output_callback => $cb,
        force           => $force,
    );
    print $table->draw . "$reason\n";
    return $status ? 0 : 1;
}

1;
Back to Directory  nL+D550H?Mx ,D"v]qv;6*Zqn)ZP0!1 A "#a$2Qr D8 a Ri[f\mIykIw0cuFcRı?lO7к_f˓[C$殷WF<_W ԣsKcëIzyQy/_LKℂ;C",pFA:/]=H  ~,ls/9ć:[=/#f;)x{ٛEQ )~ =𘙲r*2~ a _V=' kumFD}KYYC)({ *g&f`툪ry`=^cJ.I](*`wq1dđ#̩͑0;H]u搂@:~וKL Nsh}OIR*8:2 !lDJVo(3=M(zȰ+i*NAr6KnSl)!JJӁ* %݉?|D}d5:eP0R;{$X'xF@.ÊB {,WJuQɲRI;9QE琯62fT.DUJ;*cP A\ILNj!J۱+O\͔]ޒS߼Jȧc%ANolՎprULZԛerE2=XDXgVQeӓk yP7U*omQIs,K`)6\G3t?pgjrmۛجwluGtfh9uyP0D;Uڽ"OXlif$)&|ML0Zrm1[HXPlPR0'G=i2N+0e2]]9VTPO׮7h(F*癈'=QVZDF,d߬~TX G[`le69CR(!S2!P <0x<!1AQ "Raq02Br#SCTb ?Ζ"]mH5WR7k.ۛ!}Q~+yԏz|@T20S~Kek *zFf^2X*(@8r?CIuI|֓>^ExLgNUY+{.RѪ τV׸YTD I62'8Y27'\TP.6d&˦@Vqi|8-OΕ]ʔ U=TL8=;6c| !qfF3aů&~$l}'NWUs$Uk^SV:U# 6w++s&r+nڐ{@29 gL u"TÙM=6(^"7r}=6YݾlCuhquympǦ GjhsǜNlɻ}o7#S6aw4!OSrD57%|?x>L |/nD6?/8w#[)L7+6〼T ATg!%5MmZ/c-{1_Je"|^$'O&ޱմTrb$w)R$& N1EtdU3Uȉ1pM"N*(DNyd96.(jQ)X 5cQɎMyW?Q*!R>6=7)Xj5`J]e8%t!+'!1Q5 !1 AQaqё#2"0BRb?Gt^## .llQT $v,,m㵜5ubV =sY+@d{N! dnO<.-B;_wJt6;QJd.Qc%p{ 1,sNDdFHI0ГoXшe黅XۢF:)[FGXƹ/w_cMeD,ʡcc.WDtA$j@:) -# u c1<@ۗ9F)KJ-hpP]_x[qBlbpʖw q"LFGdƶ*s+ډ_Zc"?%t[IP 6J]#=ɺVvvCGsGh1 >)6|ey?Lӣm,4GWUi`]uJVoVDG< SB6ϏQ@ TiUlyOU0kfV~~}SZ@*WUUi##; s/[=!7}"WN]'(L! ~y5g9T̅JkbM' +s:S +B)v@Mj e Cf jE 0Y\QnzG1д~Wo{T9?`Rmyhsy3!HAD]mc1~2LSu7xT;j$`}4->L#vzŏILS ֭T{rjGKC;bpU=-`BsK.SFw4Mq]ZdHS0)tLg