diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml deleted file mode 100644 index f164c3a..0000000 --- a/.github/workflows/deploy.yml +++ /dev/null @@ -1,90 +0,0 @@ -# Sample workflow for building and deploying an Astro site to GitHub Pages -# -# To get started with Astro see: https://docs.astro.build/en/getting-started/ -# -name: Deploy Astro site to Pages - -on: - # Runs on pushes targeting the default branch - push: - branches: ["main"] - - # Allows you to run this workflow manually from the Actions tab - workflow_dispatch: - -# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages -permissions: - contents: read - pages: write - id-token: write - -# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued. -# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete. -concurrency: - group: "pages" - cancel-in-progress: false - -env: - BUILD_PATH: "." # default value when not using subfolders - # BUILD_PATH: subfolder - -jobs: - build: - name: Build - runs-on: ubuntu-latest - steps: - - name: Checkout - uses: actions/checkout@v4 - - name: Detect package manager - id: detect-package-manager - run: | - if [ -f "${{ github.workspace }}/yarn.lock" ]; then - echo "manager=yarn" >> $GITHUB_OUTPUT - echo "command=install" >> $GITHUB_OUTPUT - echo "runner=yarn" >> $GITHUB_OUTPUT - echo "lockfile=yarn.lock" >> $GITHUB_OUTPUT - exit 0 - elif [ -f "${{ github.workspace }}/package.json" ]; then - echo "manager=npm" >> $GITHUB_OUTPUT - echo "command=ci" >> $GITHUB_OUTPUT - echo "runner=npx --no-install" >> $GITHUB_OUTPUT - echo "lockfile=package-lock.json" >> $GITHUB_OUTPUT - exit 0 - else - echo "Unable to determine package manager" - exit 1 - fi - - name: Setup Node - uses: actions/setup-node@v4 - with: - node-version: "20" - cache: ${{ steps.detect-package-manager.outputs.manager }} - cache-dependency-path: ${{ env.BUILD_PATH }}/${{ steps.detect-package-manager.outputs.lockfile }} - - name: Setup Pages - id: pages - uses: actions/configure-pages@v5 - - name: Install dependencies - run: ${{ steps.detect-package-manager.outputs.manager }} ${{ steps.detect-package-manager.outputs.command }} - working-directory: ${{ env.BUILD_PATH }} - - name: Build with Astro - run: | - ${{ steps.detect-package-manager.outputs.runner }} astro build \ - --site "${{ steps.pages.outputs.origin }}" \ - --base "${{ steps.pages.outputs.base_path }}" - working-directory: ${{ env.BUILD_PATH }} - - name: Upload artifact - uses: actions/upload-pages-artifact@v3 - with: - path: ${{ env.BUILD_PATH }}/dist - - deploy: - environment: - name: github-pages - url: ${{ steps.deployment.outputs.page_url }} - needs: build - runs-on: ubuntu-latest - name: Deploy - steps: - - name: Deploy to GitHub Pages - id: deployment - uses: actions/deploy-pages@v4 \ No newline at end of file diff --git a/DECAP_CMS_SETUP.md b/DECAP_CMS_SETUP.md index 46af70d..9899335 100644 --- a/DECAP_CMS_SETUP.md +++ b/DECAP_CMS_SETUP.md @@ -4,35 +4,57 @@ This website uses Decap CMS (formerly Netlify CMS) for content management. It allows authorized users to create, edit, and manage blog posts through a web interface. +## Current Setup Status + +**Error**: "Unable to access identity settings. When using git-gateway backend make sure to enable Identity service and Git Gateway." + +This means Netlify Identity and Git Gateway need to be properly configured. + ## Setup Instructions ### 1. Enable Netlify Identity -1. Go to your Netlify dashboard -2. Navigate to your site settings -3. Go to "Identity" tab -4. Click "Enable Identity" +1. Go to your Netlify dashboard: https://app.netlify.com/ +2. Select your site (ym1ktc.netlify.app) +3. Navigate to **Site settings** → **Identity** +4. Click **"Enable Identity"** 5. In Identity settings, configure: - - Registration: "Invite only" (recommended) - - External providers: Enable GitHub, Google, etc. as needed - - Git Gateway: Enable this service + - **Registration**: Set to "Invite only" (recommended for security) + - **External providers**: Optionally enable GitHub, Google, etc. + - **Field validation**: No changes needed for basic setup ### 2. Configure Git Gateway +**This is the crucial step that's currently missing:** + 1. In your site's Identity settings -2. Go to "Services" tab -3. Enable "Git Gateway" +2. Go to **"Services"** tab +3. Click **"Enable Git Gateway"** 4. This allows Decap CMS to commit directly to your GitHub repository +5. **Important**: Git Gateway requires the Identity service to be enabled first -### 3. Invite Users +### 3. Configure Custom Domain Access -1. In Identity tab, click "Invite users" +Since you're using https://taslak.radio.org.tr/, ensure: + +1. The custom domain is properly configured in Netlify +2. Identity service works on both domains: + - https://ym1ktc.netlify.app/admin/ + - https://taslak.radio.org.tr/admin/ + +### 4. Invite Users + +After Identity and Git Gateway are enabled: + +1. In Identity tab, click **"Invite users"** 2. Enter email addresses of content editors 3. They will receive invitation emails +4. Users must accept invitations to access the CMS -### 4. Access the CMS +### 5. Access the CMS -- CMS URL: `https://your-site.netlify.app/admin/` +- Primary URL: `https://taslak.radio.org.tr/admin/` +- Backup URL: `https://ym1ktc.netlify.app/admin/` - Users can log in with their invited credentials - The CMS will redirect to `/decapcms/` for the actual interface @@ -96,13 +118,38 @@ Netlify redirect rules for admin routing ## Troubleshooting +### Current Error: "Unable to access identity settings" + +**This specific error means:** +- Netlify Identity service is not enabled on your site +- Git Gateway is not enabled +- Or both services need to be configured + +**Solution steps:** +1. Go to https://app.netlify.com/sites/ym1ktc/settings/identity +2. If Identity is not enabled, click "Enable Identity" +3. Go to Services tab and enable "Git Gateway" +4. Wait a few minutes for services to activate +5. Try accessing `/admin/` again + ### Common Issues: -1. **Can't log in**: Check if Identity is enabled and user is invited -2. **Can't save posts**: Ensure Git Gateway is enabled -3. **Images not uploading**: Check media folder permissions -4. **Changes not deploying**: Verify GitHub Actions workflow +1. **"Unable to access identity settings"**: Enable Identity service and Git Gateway in Netlify dashboard +2. **Can't log in**: Check if Identity is enabled and user is invited +3. **Can't save posts**: Ensure Git Gateway is enabled and connected to GitHub +4. **Images not uploading**: Check media folder permissions in repository +5. **Custom domain issues**: Ensure Identity works on both netlify.app and custom domain +6. **404 on /admin/**: Check that _redirects file is deployed correctly + +### Quick Verification Steps: + +1. Check Identity status: https://app.netlify.com/sites/ym1ktc/settings/identity +2. Check Git Gateway: Should show "Connected" status when properly configured +3. Test admin access: https://taslak.radio.org.tr/admin/ +4. Check browser console for JavaScript errors ### Support For technical issues, contact the development team or check the Decap CMS documentation at https://decapcms.org/docs/ + +**Netlify-specific help:** https://docs.netlify.com/visitor-access/identity/ diff --git a/public/decapcms/config.yml b/public/decapcms/config.yml index 036fac9..465872d 100644 --- a/public/decapcms/config.yml +++ b/public/decapcms/config.yml @@ -5,8 +5,8 @@ backend: media_folder: 'src/assets/images' public_folder: '/_astro' -site_url: https://ym1ktc.github.io/ARC-Web-Sitesi -display_url: https://ym1ktc.github.io/ARC-Web-Sitesi +site_url: https://taslak.radio.org.tr +display_url: https://taslak.radio.org.tr collections: - name: 'post'