# Conceptos basicos de flux
[Documentación de Flux](https://fluxcd.io/flux/components/)
# Comandos de instalación
[Instalación de Flux](https://fluxcd.io/flux/installation/)
# Formas de estructurar tus repositorios
[Estructuración de Repositorios](https://fluxcd.io/flux/guides/repository-structure/)
# Generar el token para poder entrar a GitHub desde Flux
1. Visita [GitHub Tokens](https://github.com/settings/tokens)
2. Ejecuta los siguientes comandos:
```bash
export GITHUB_TOKEN=<tu-token>
export GITHUB_USER=<tu-usuario>Ejecuta el siguiente comando:
flux check --pre- Ahi encontraras los archivos de instalacion basicos de Flux
- Y la carpeta ./clusters/my-cluster en donde haremos toda la magia
flux bootstrap github \
--components-extra=image-reflector-controller,image-automation-controller \
--owner=$GITHUB_USER \
--repository=fleet-infra \
--branch=main \
--path=./clusters/my-cluster \
--personal
git clone https://github.com/$GITHUB_USER/fleet-infra
cd fleet-infraflux create source git podinfo \
--url=https://github.com/stefanprodan/podinfo \
--branch=master \
--interval=1m \
--export > ./clusters/my-cluster/git/podinfo-source.yamlflux create kustomization podinfo \
--target-namespace=default \
--source=podinfo \
--path="./kustomize" \
--prune=true \
--wait=true \
--interval=5m \
--retry-interval=2m \
--health-check-timeout=3m \
--export > ./clusters/my-cluster/podinfo-kustomization.yamlflux reconcile kustomization flux-system --with-sourceflux suspend kustomization <nombre>- Explicación del archivo
repositoryque esta en el repo - Explicación del archivo
releaseque esta en el repo
- Crear deployment
- Crear archivo
registry
flux create image repository podinfo \
--image=ghcr.io/stefanprodan/podinfo \
--interval=5m \
--export > ./clusters/my-cluster/podinfo-registry.yaml- Crear archivo
policy
flux create image policy podinfo \
--image-ref=podinfo \
--select-semver=5.0.x \
--export > ./clusters/my-cluster/podinfo-policy.yaml- Subir cambios y sincronizar con Flux
flux reconcile kustomization flux-system --with-sourcekubectl -n flux-system describe imagerepositories podinfoflux create image update flux-system \
--interval=30m \
--git-repo-ref=flux-system \
--git-repo-path="./clusters/my-cluster" \
--checkout-branch=main \
--push-branch=main \
--author-name=fluxcdbot \
--author-email=fluxcdbot@users.noreply.github.com \
--commit-template="{{range .Updated.Images}}{{println .}}{{end}}" \
--export > ./clusters/my-cluster/flux-system-automation.yaml# {"$imagepolicy": "flux-system:podinfo"}flux reconcile kustomization flux-system --with-source