Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adding enableLog() & disableLog() methods #48

Merged
merged 1 commit into from
Nov 15, 2023

Conversation

Bizarrus
Copy link
Contributor

@Bizarrus Bizarrus commented Nov 8, 2023

No description provided.

@skoerfgen skoerfgen self-requested a review November 9, 2023 17:52
@skoerfgen skoerfgen self-assigned this Nov 9, 2023
@skoerfgen skoerfgen added the enhancement New feature or request label Nov 9, 2023
skoerfgen added a commit that referenced this pull request Nov 9, 2023
@skoerfgen skoerfgen removed their request for review November 9, 2023 20:15
@skoerfgen
Copy link
Owner

Danke für Deinen Pull-Request!

Habe das Ganze noch ein wenig angepasst, sodaß es statt zwei Funktionen nur Eine gibt mit der man das Logging steuern kann. (Es kann auch eine Callback-Funktion übergeben werden, die dann die Logs erhält)

Den aktuellen Code findest Du in der 'log'-Branch:
https://github.com/skoerfgen/ACMECert/tree/log

@Bizarrus
Copy link
Contributor Author

Bizarrus commented Nov 9, 2023

Wenn es später in der main-branch ist, update ich das direkt auf meiner Core vom Hosting-Panel, Danke!

Ich werde mich in nächster Zeit einmal damit befassen, da ich mal wieder die Möglichkeit des delaying aus issue #4 befassen müsste. Da werde ich sicherlich noch einige Dinge basteln!

@skoerfgen skoerfgen merged commit 3b41933 into skoerfgen:master Nov 15, 2023
@skoerfgen
Copy link
Owner

Habe gerade Version 3.3.0 veröffentlicht!

Das mit dem delaying schau ich mir bei Gelegenheit auch nochmal an. So ganz aufgegeben habe ich es auch noch nicht :D

@skoerfgen
Copy link
Owner

@Bizarrus Bin bei der Sache noch weitergekommen! Schau Dir mal die "split"-Branch an:

https://github.com/skoerfgen/ACMECert/tree/split

Da gibts jetzt zwei neue Funktionen:

public function createOrder($domain_config,$add_handler,$settings=array());
public function finalizeOrder($pem,$domain_config,$order_location,$remove_handler,$all_chains=false);

Damit ist jetzt ein zweistufiger Prozess so möglich:

Schritt 1

require 'ACMECert/ACMECert.php';

$ac=new \skoerfgen\ACMECert\ACMECert(false);
$ac->loadAccountKey('file://'.'account_key.pem');

$domain_config=array(
	'ex1.example.com'=>['challenge'=>'http-01','docroot'=>'/var/www/example.com/www'],
	'ex2.example.com'=>['challenge'=>'http-01','docroot'=>'/var/www/example.com/www'],
);

$add_handler=function($opts){
	print_r($opts);
	$fn=$opts['config']['docroot'].$opts['key'];
	@mkdir(dirname($fn),0777,true);
	echo 'CREATE '.$fn."\n";
	file_put_contents($fn,$opts['value']);
};

$order_location=$ac->createOrder($domain_config,$add_handler);

echo json_encode(array($order_location,$domain_config)),"\n";

Schritt 2:

require 'ACMECert/ACMECert.php';

list($order_location,$domain_config)=json_decode(readline('input json: '),true);

$ac=new \skoerfgen\ACMECert\ACMECert(false);
$ac->loadAccountKey('file://'.'account_key.pem');

$remove_handler=function($opts){
	$fn=$opts['config']['docroot'].$opts['key'];
	echo 'REMOVE ',$fn,"\n";
	unlink($fn);
};

$ret=$ac->finalizeOrder($ac->generateECKey(),$domain_config,$order_location,$remove_handler,true);
print_r($ret);

@Bizarrus
Copy link
Contributor Author

@skoerfgen ich kann erst leider nächste Woche was machen, da mein Laptop bei HP in Reparatur ist, der eigentlich schon längst wieder hier sein sollte. Ich schaus mir aber dann mal an! :D

@skoerfgen
Copy link
Owner

All right! Keine Eile!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants