github / github/octocatalog-diff

CompilationDir doesn't ignore changes when using the cache

Aperta
#189 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
Ruby
Stelle
252
Fork
95
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

> Description of problem

When activating the cache (with `--cached-master-dir` option), the `CompilationDir` filter gets the cache path as the `:from_compilation_dir` instead of the original compilation dir that was used when the cache was compiled.

Thus the filter doesn't filter out resources that references the compilation dir.

For instance the following resource (from the vox pupuli hiera module):
~~~puppet
file { '/etc/hiera.yaml':
ensure => symlink,
target => "${confdir}/hiera.yaml",
}
~~~

doesn't get ignored:
~~~
File[/etc/hiera.yaml] =>
parameters =>
target =>
- /tmp/ocd-ipc-20180604-1-nbv4q/ocd-builddir-20180604-256-10c2qyt/hiera.yaml
+ /tmp/ocd-ipc-20180605-232-1yut8ed/ocd-builddir-20180605-237-13ya1gx/hiera.yaml
~~~

When running without the cache enabled, the parameter (and resource) above gets properly filtered out.

> Platform and version information

- Your OS: ubuntu 16.04
- Your Ruby version: 2.3.1
- Your version of Puppet: 5.5.0
- Your version of octocatalog-diff: 1.5.3

> Anything else to add that you think will be helpful?

Either the catalog should be rewritten with the cache directory or `octocatalog-diff` should keep the original compilation dir in the cache so that the `CompilationDir` could be fed with the correct information.

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Inizia tracciando il filtro CompilationDir e la gestione del percorso della cache --cached-master-dir. Determina dove viene perso il directory di compilazione originale o se il catalogo viene riscritto, quindi verifica che le risorse che vi fanno riferimento vengano filtrate in modo coerente quando la memorizzazione nella cache è abilitata; l’issue è completata quando la modifica mostrata a hiera.yaml viene ignorata come avviene senza la cache.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
ruby
Ambito
tooling
Tipo di issue
Bug
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.