Files
thpeetz-notes/Areas/cimt AG/Präsentation/Gradle Convention Plugins.md
T

2.7 KiB

id, aliases, tags, status, subtitle, type, lecture_date
id aliases tags status subtitle type lecture_date
Gradle Convention Plugins
process/lightning_talk
Archiv Project Board Archiv 2024-02-16

[!info]- Projekt Goal:: Lightning Talks Progress:: $= dv.view('project-progress', {file: 'Gradle Convention Plugins'}) Target:: $= dv.view('project-target', {file: 'Gradle Convention Plugins'}) Bar:: $= dv.view('project-progress-bar', {file: 'Gradle Convention Plugins'}) Tasks:: $= const aufgaben = dv.page('Gradle Convention Plugins').file.inlinks.where(t => { const mt = dv.page(t.path); return mt.tags?.includes('process/task') && mt.status === 'In Arbeit'}); if (aufgaben.length > 0) { dv.header(4, aufgaben.length > 1 ? "Aufgaben" : "Aufgabe"); dv.list(aufgaben) }

Project Info

Vortrag gehalten am 2024-02-16 Lightning Talks

Thoughts

  • Vorstellung von Gradle
    • Plugin System
    • Convention Plugins
  • Convention Plugins
    • eingebettete Plugins
  • Plugin Projekte
    • Aufbau von Plugin Projekten
    • Einbindung von externen Plugins
    • Verteilung von Plugins
    • Verwendung von Credentials
  • Plugin Management
    • lokale Definition
    • globale Definition
    • Initialisierung Skripte
    • . gradle/init.d/init.gradle

Resources

  • Converting Gradle convention plugins to binary plugins
  • Sharing convention plugins with build logic
  • Sharing build logic between subprojects Sample

Github Repository

convention-plugins A collection of Gradle convention plugins for Java and Asciidoctor builds.

Review questions

Aufgaben

  • Vortrag Gradle Convention Plugins ausarbeiten [start:: 2024-02-13] [scheduled:: 2024-02-16] [due:: 2024-02-16] [completion:: 2024-02-16]
  • Vortrag Gradle Convention Plugins halten [scheduled:: 2024-02-16] [completion:: 2024-02-16]

Offene Aufgaben

const pages = dv.current().file.inlinks.where(p => dv.page(p.path).tags?.includes('process/task')).where(p => dv.page(p.path).file.tasks.length != dv.page(p.path).file.tasks.where(t => t.fullyCompleted === true).length);

dv.table(["Project", "Status", "Completed", "Tasks"], pages.map(p => {
	const page = dv.page(p.path);
	const tasks = page.file.tasks;
   	return [
   		page.file.link,
   		page.status,
   		tasks.where(t => t.fullyCompleted === true).length,
   		tasks.length
   	]
}));

Aufgaben

const pages = dv.current().file.inlinks.where(p => dv.page(p.path).tags?.includes('process/task'));

dv.table(["Project", "Status", "Completed", "Tasks"], pages.map(p => {
	const page = dv.page(p.path);
	const tasks = page.file.tasks;
	return [
		page.file.link,
		page.status,
		tasks.where(t => t.fullyCompleted === true).length,
		tasks.length
	]
}));